Heim > Datenbank > MySQL-Tutorial > Wie behebe ich den MySQL-Fehler „Zugriff verweigert für Benutzer ‚root'@'localhost' (mit Passwort: JA)'?

Wie behebe ich den MySQL-Fehler „Zugriff verweigert für Benutzer ‚root'@'localhost' (mit Passwort: JA)'?

Linda Hamilton
Freigeben: 2024-12-25 05:30:17
Original
674 Leute haben es durchsucht

How to Resolve the MySQL Error

Enthüllung des Rätsels: Lösung von „Zugriff verweigert für Benutzer ‚root‘@‘localhost‘ (mit Passwort: JA)“

Der Fehler Meldung „Zugriff für Benutzer ‚root‘@‘localhost‘ verweigert (mit Passwort: JA) – Keine Berechtigungen?“ kann auftreten, wenn versucht wird, mit dem Root-Benutzer eine Verbindung zu einer MySQL-Datenbank herzustellen. Dieses frustrierende Problem tritt auf, wenn die Schema-Berechtigungen des Root-Benutzers null sind, wodurch praktisch alle Zugriffsrechte widerrufen werden.

Der Ursache des Problems auf der Spur

Ein Blick in die MySQL Workbench, it Es wird festgestellt, dass die Schema-Berechtigungen des Root-Benutzers tatsächlich fehlen. Dies erklärt, warum Standardbefehle wie FLUSH HOSTS und FLUSH PRIVILEGES keine Ergebnisse liefern.

Root-Zugriff zurückfordern: Eine Schritt-für-Schritt-Anleitung

  1. Überprüfen Sie die Benutzer- und Authentifizierungseinstellungen:

Führen Sie die Abfrage „SELECT user, Authentication_String, Plugin, Host FROM mysql.user;" um die Authentifizierungsmethode zu bestimmen. Wenn „auth_socket“ für den Root-Benutzer angezeigt wird, bedeutet dies, dass die Socket-Authentifizierung verwendet wird, die Root-Zugriff auf den Server erfordert.

  1. Benutzerauthentifizierung ändern:

Um eine Verbindung mit einem Passwort zu ermöglichen, aktualisieren Sie den Wert „authentication_string“ für den Root-Benutzer unter „localhost“ auf „mysql_native_password“, das zur Authentifizierung ein Passwort erfordert.

  1. Legen Sie das Root-Passwort fest:

Verwenden Sie den Befehl „ALTER USER 'root'@ 'localhost' IDENTIFIED WITH mysql_native_password BY 'Current-Root-Password';" um das Root-Passwort festzulegen.

  1. Berechtigungen erteilen:

Gewähren Sie dem Root-Benutzer bei Bedarf die entsprechenden Berechtigungen mit dem GRANT-Befehl.

  1. Spülen Privilegien:

Führen Sie „FLUSH PRIVILEGES;“ aus. um sicherzustellen, dass die Änderungen wirksam werden.

  1. Änderungen bestätigen:

Führen Sie die Benutzerinformationsabfrage erneut aus, um zu überprüfen, ob der Root-Benutzer jetzt über „mysql_native_password“ verfügt. Authentifizierung und die gewünschten Berechtigungen.

Durch Befolgen dieser Schritte kann der Root-Zugriff wiederhergestellt werden, was die vollständige Kontrolle über MySQL ermöglicht Datenbank.

Das obige ist der detaillierte Inhalt vonWie behebe ich den MySQL-Fehler „Zugriff verweigert für Benutzer ‚root'@'localhost' (mit Passwort: JA)'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage