"Accès refusé pour l'utilisateur 'root'@'localhost' (en utilisant le mot de passe : OUI) - Aucun privilège ?"
Cette erreur se produit lorsque l'utilisateur root de MySQL ne dispose pas des privilèges nécessaires pour effectuer une opération.
Schéma nul de l'utilisateur root Privilèges
Habituellement, l'utilisateur root dispose de tous les privilèges. Cependant, dans ce cas, il est signalé que les privilèges de schéma de la racine sont nuls, ce qui indique qu'il ne dispose d'aucune autorisation.
Impact sur diverses plates-formes
Ce problème affecte l'utilisateur capacité à exploiter le serveur MySQL sur différentes plates-formes. L'utilisateur rencontre des obstacles même lorsqu'il est connecté en tant que "[email protected]".
Tentatives de dépannage
L'utilisateur a tenté diverses solutions, telles que "FLUSH HOSTS". et "FLUSH PRIVILEGES", mais ceux-ci se sont révélés infructueux.
Solution pour MySQL 5.7
Si vous rencontrez ce problème dans MySQL 5.7 ou version ultérieure, la solution consiste à activer l'authentification par mot de passe :
Exécutez la requête SQL suivante :
SELECT user, authentication_string, plugin, host FROM mysql.user;
Notez que la "authentication_string" pour l'utilisateur root ne doit pas être vide. Si tel est le cas, mettez-le à jour avec le mot de passe root actuel :
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<Current-Root-Password>';
Vinez les privilèges :
FLUSH PRIVILEGES;
Solution pour MariaDB
Pour MariaDB, utilisez la requête suivante pour définir le nom de l'utilisateur root mot de passe :
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('manager');
Vous pouvez trouver plus d'informations sur https://mariadb.com/kb/en/set-password/.
Remarque :
Après avoir désactivé les plugins d'authentification ou modifié le mot de passe de l'utilisateur root, il est recommandé d'exécuter la commande "mysql_secure_installation" pour améliorer sécurité.
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!