Home >Database >Mysql Tutorial >Why Does My Java JDBC Connection to MySQL Result in an \'Access Denied\' Error?
JDBC Connection Issue: Resolving Access Denied Error
Upon attempting to establish a JDBC connection to a MySQL database from a Java application, users may encounter the dreaded "Access denied" error. One such instance was raised by a developer who encountered the following message:
java.sql.SQLException: Access denied for user 'vincent'@'x.x.x.x' (using password: YES)
Troubleshooting the Issue
The developer confirmed that the user "vincent" had permission to connect from any host in phpMyAdmin. Additionally, a Python script could successfully connect using the same credentials. This elimination process led to the conclusion that the problem must lie elsewhere.
Granting Privileges
After careful inspection, it was discovered that the user "vincent" did not have all necessary privileges to access the MySQL database from the Java application. To rectify this issue, the following command was executed:
grant all on db_name.* to ‘vincent’@'%';
where "db_name" represented the name of the database being accessed.
By granting all privileges to the user from any machine, the connection issue was resolved. The Java application was now able to successfully establish a connection to the MySQL database without encountering any access denied errors.
The above is the detailed content of Why Does My Java JDBC Connection to MySQL Result in an \'Access Denied\' Error?. For more information, please follow other related articles on the PHP Chinese website!