Maison >base de données >tutoriel mysql >Pourquoi est-ce que j'obtiens « Accès refusé pour l'utilisateur 'root'@'localhost' » dans MySQL malgré l'accès en ligne de commande ?
Comprendre l'erreur « Accès refusé pour l'utilisateur 'root'@'localhost' (en utilisant le mot de passe : OUI) » dans MySQL
Lors de la tentative opérations de base de données via une application Web, vous pouvez rencontrer l'erreur « Accès refusé pour l'utilisateur 'root'@'localhost' (en utilisant le mot de passe : OUI)." Bien qu'il soit possible d'accéder à la base de données à partir de l'invite de commande, cette erreur peut être frustrante.
Origine de l'erreur
Cette erreur se produit généralement parce que les privilèges utilisateur ne sont pas correctement configuré pour l'utilisateur « root » dans MySQL. Par défaut, l'utilisateur « root » a un accès limité depuis l'hôte « localhost ».
Résoudre le problème de connexion
Pour résoudre ce problème, vous devez accorder le Accès utilisateur « root » à la base de données depuis « localhost ». Une approche efficace consiste à exécuter la commande suivante à partir de l'invite de commande MySQL :
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
Assurer la cohérence du nom d'hôte
Il est crucial de s'assurer que le nom d'hôte que vous utilisez lors de la connexion à la base de données correspond au nom d'hôte spécifié dans l'instruction GRANT. Dans ce cas, « localhost » doit être utilisé dans les deux cas.
Exemple de séquence de commandes
Voici un exemple de séquence de commandes que vous pouvez exécuter dans l'invite de commande MySQL pour résoudre ce problème :
Une fois que vous avez exécuté ces commandes, vous devriez pouvoir accéder à la base de données depuis votre application Web sans rencontrer l'erreur "Accès refusé". N'oubliez pas de configurer le nom d'hôte en conséquence en fonction de votre environnement spécifique.
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!