Generally, this ” Access denied for user ‘username’@’host’ (using password: YES) ” occurs because of one of the following reasons,
- The user tries to access the database with an invalid login username & password
- When there are no privileges for the tried user
- Login access is blocked by hosting server settings
In the first case, you just have to recheck login credentials. If you lost your login password, then you have to reset it. Refer to this guide: MySQL : How to Reset the Root Password
In other cases, we will see how to fix it.
SQL Error (1045) Scenario
In this case ” Access denied for user ‘username’@’host’ (using password: YES) ” error has appeared while connecting SQL server hosted on Webhosting (cPanel) and the user is trying to connect from his local PC.While connecting to an SQL server hosted on your web hosting service provider using database tools like MySQL Workbench or HeidiSQL sometimes the following error may occur
SQL Error (1045) in statement #0: Access denied for user ‘username’@’host’ (using password: YES)
The error message popup screenshot is as follows,
![[Solved] MySQL: Access denied for user 'username'@'host' (using password: YES) error in Workbench, HeidiSQL 1 Access denied for user ‘username@host using password YES in heidi](https://www.techiesdiary.com/wp-content/uploads/2014/01/Access-denied-for-user-‘username@host-using-password-YES-in-heidi.jpg)
Error in
HeidiSQL database tool.
Since this error is also associated with an invalid username and password, some forums suggesting to check login credentials. But in this case, the error is appeared even after entering the correct username and password.
Even if you try to connect MySQL server using different database tools like Workbench, Navicat for MySQL, etc problem will not get solved.
Fixing ” Access denied for user ‘username’@’host’ (using password: YES) error”
In our side troubleshooting, we found that the connection from the outside world is blocked by the server by default for security reasons. This is a normal security provision arranged by a web hosting company to avoid unauthorized access.
To solve this problem, you have to either allow your static IP or give a wildcard ‘%’ entry.