Heim >Datenbank >MySQL-Tutorial >Warum wird dem Benutzer „root@localhost' der MySQL-Zugriff verweigert (mit Passwort: NEIN oder JA)?

Warum wird dem Benutzer „root@localhost' der MySQL-Zugriff verweigert (mit Passwort: NEIN oder JA)?

DDD
DDDOriginal
2024-12-22 12:10:45562Durchsuche

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

MySQL-Fehler: Zugriff für Benutzer „root@localhost“ verweigert (Passwort verwenden: NEIN)

Problem:

Wenn Sie versuchen, WordPress auf einem Windows-Desktop auszuführen, ist MySQL erforderlich. Ohne jedoch während der Installation ein Root-Passwort festzulegen, fragt WordPress bei der Installation nach einem solchen. Versuche, mit einem Standardkennwort oder ohne Kennwort mit mysql -u root -p auf MySQL zuzugreifen, führen dazu, dass der Zugriff verweigert wird.

Mögliche Lösung:

Der Benutzer darf dies nicht tun Ich habe bei der Installation ein Root-Passwort für MySQL festgelegt. Um dieses Problem zu beheben, führen Sie die folgenden Schritte aus:

  1. Stoppen Sie den MySQL-Dienst:Stoppen Sie den MySQL-Dienst in den Windows-Diensten.
  2. Öffnen Sie die Eingabeaufforderung : Öffnen Sie eine Eingabeaufforderung mit erhöhten Rechten.
  3. Verzeichnis ändern: Navigieren Sie zum MySQL-Bin-Verzeichnis: c:program filesmysqlbin.
  4. Führen Sie den Befehl aus: Führen Sie den folgenden Befehl aus und ersetzen Sie „C:root.txt“ durch den Pfad zu einer Datei, die das Root-Passwort enthält (falls vorhanden):
mysqld --defaults-file="C:\program files\mysql\mysql server 5.1\my.ini" --init-files=C:\root.txt
  1. Starten Sie den MySQL-Dienst: Starten Sie den MySQL-Dienst in Windows neu Dienste.
  2. Passwort eingeben: Geben Sie mysql -u root -p in die Eingabeaufforderung ein und geben Sie das Root-Passwort ein, wenn Sie dazu aufgefordert werden.

Update:

Selbst nachdem die oben genannten Schritte ausgeführt wurden, wird der Zugriff möglicherweise immer noch mit der Fehlermeldung verweigert Nachricht:

"Zugriff verweigert für Benutzer 'root@localhost' (mit Passwort:JA)"

Zusätzliche Lösung:

Um diesen Fehler zu beheben, setzen Sie das Passwort des Root-Benutzers wie folgt zurück Schritte:

  1. MySQL im abgesicherten Modus neu starten: Stoppen Sie den MySQL-Dienst und starten Sie ihn dann ohne Berechtigungen mit mysqld_safe --skip-grant-tables &.
  2. Mit MySQL verbinden: Geben Sie die MySQL-Eingabeaufforderung ein: mysql -u root.
  3. Passwort zurücksetzen:Verwenden Sie die folgenden Befehle, um das Passwort zurückzusetzen:
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. MySQL normal neu starten: Beenden Sie den mysqld_safe-Prozess und den MySQL-Prozess und starten Sie MySQL dann normal Modus.
  2. Testzugriff: Stellen Sie eine Verbindung zu MySQL mit dem in Schritt 3 festgelegten Root-Passwort her, z. B. mysql -u root -pYourNewPassword. Der Zugriff sollte nun gewährt werden.

Das obige ist der detaillierte Inhalt vonWarum wird dem Benutzer „root@localhost' der MySQL-Zugriff verweigert (mit Passwort: NEIN oder JA)?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn