Problème de connexion JDBC : résolution de l'erreur d'accès refusé
Lors de la tentative d'établissement d'une connexion JDBC à une base de données MySQL à partir d'une application Java, les utilisateurs peuvent rencontrez la redoutable erreur « Accès refusé ». Un de ces cas a été signalé par un développeur qui a rencontré le message suivant :
java.sql.SQLException: Access denied for user 'vincent'@'x.x.x.x' (using password: YES)
Dépannage du problème
Le développeur a confirmé que l'utilisateur "vincent" avait l'autorisation de connectez-vous depuis n’importe quel hôte dans phpMyAdmin. De plus, un script Python pourrait se connecter avec succès en utilisant les mêmes informations d'identification. Ce processus d'élimination a conduit à la conclusion que le problème devait résider ailleurs.
Accord de privilèges
Après une inspection minutieuse, il a été découvert que l'utilisateur "vincent" n'avait pas tous les privilèges nécessaires pour accéder à la base de données MySQL depuis l'application Java. Pour remédier à ce problème, la commande suivante a été exécutée :
grant all on db_name.* to ‘vincent’@'%';
où "db_name" représentait le nom de la base de données accessible.
En accordant tous les privilèges à l'utilisateur depuis n'importe quelle machine, le problème de connexion a été résolu. L'application Java a désormais réussi à établir une connexion à la base de données MySQL sans rencontrer d'erreurs d'accès refusé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!