Maison >base de données >tutoriel mysql >Pourquoi l'accès à MySQL est-il refusé pour l'utilisateur « root@localhost » (en utilisant le mot de passe : NON ou OUI) ?

Pourquoi l'accès à MySQL est-il refusé pour l'utilisateur « root@localhost » (en utilisant le mot de passe : NON ou OUI) ?

DDD
DDDoriginal
2024-12-22 12:10:45606parcourir

Why Is MySQL Access Denied for User 'root@localhost' (Using Password: NO or YES)?

Erreur MySQL : accès refusé pour l'utilisateur 'root@localhost' (Utilisation du mot de passe : NON)

Problème :

Lorsque vous essayez d'exécuter WordPress sur un bureau Windows, MySQL est requis. Cependant, sans définir de mot de passe root lors de l'installation, WordPress en demande un lors de l'installation. Les tentatives d'accès à MySQL avec un mot de passe par défaut ou sans mot de passe à l'aide de mysql -u root -p entraînent un refus d'accès.

Résolution potentielle :

L'utilisateur ne peut pas avoir défini un mot de passe root pour MySQL lors de l'installation. Pour résoudre ce problème, suivez les étapes ci-dessous :

  1. Arrêtez le service MySQL : Arrêtez le service MySQL dans les services Windows.
  2. Ouvrez l'invite de commande : Ouvrez une invite de commande élevée.
  3. Changer de répertoire : Accédez au répertoire bin MySQL : c:program filesmysqlbin.
  4. Exécutez la commande : Exécutez la commande suivante en remplaçant "C:root.txt" par le chemin d'accès à un fichier contenant le mot de passe root (le cas échéant) :
mysqld --defaults-file="C:\program files\mysql\mysql server 5.1\my.ini" --init-files=C:\root.txt
  1. Démarrez le service MySQL : Redémarrez le service MySQL sous Windows services.
  2. Entrez le mot de passe : Tapez mysql -u root -p dans l'invite de commande et entrez le mot de passe root lorsque vous y êtes invité.

Mise à jour :

Même après avoir suivi les étapes ci-dessus, l'accès peut toujours être refusé avec l'erreur message :

"Accès refusé pour l'utilisateur 'root@localhost' (en utilisant le mot de passe :OUI)"

Solution supplémentaire :

Pour corriger cette erreur, réinitialisez le mot de passe de l'utilisateur root en utilisant ce qui suit étapes :

  1. Redémarrez MySQL en mode sans échec : Arrêtez le service MySQL, puis démarrez-le sans aucun privilège en utilisant mysqld_safe --skip-grant-tables &.
  2. Connectez-vous à MySQL : Entrez l'invite de commande MySQL : mysql -u root.
  3. Réinitialiser le mot de passe : Utilisez les commandes suivantes pour réinitialiser le mot de passe :
mysql> use mysql;
mysql> truncate table user;
mysql> flush privileges;
mysql> grant all privileges on *.* to root@localhost identified by 'YourNewPassword' with grant option;
mysql> quit;
  1. Redémarrez MySQL normalement : Tuez le processus mysqld_safe et le processus MySQL, puis démarrez MySQL normalement mode.
  2. Test d'accès : Connectez-vous à MySQL avec le mot de passe root défini à l'étape 3, par exemple mysql -u root -pYourNewPassword. L'accès devrait maintenant être accordé.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn