Heim >Datenbank >MySQL-Tutorial >MySQL-Zugriff verweigert: Wie kann der Fehler „Zugriff verweigert für Benutzer „@'localhost'' behoben und behoben werden?
MySQL-Zugriff verweigert-Fehler: Fehlerbehebung und Lösung
Beim Versuch, MySQL-Abfragen auszuführen, kann der Fehler „FEHLER 1044 (42000)“ auftreten: Meldung „Zugriff für Benutzer „@‘localhost‘ auf Datenbank ‚db‘“ verweigert. Dieser Fehler weist darauf hin, dass der aktuelle Benutzer nicht über ausreichende Berechtigungen verfügt, um auf die angeforderte Datenbank zuzugreifen.
Verstehen des Fehlers
Die Fehlermeldung „Zugriff verweigert“ deutet darauf hin, dass der Benutzer versucht, die Datenbank auszuführen Die Abfrage verfügt nicht über die erforderlichen Berechtigungen, um eine Verbindung zur Datenbank herzustellen oder den gewünschten Vorgang auszuführen. In diesem speziellen Fall wird der Benutzer, der versucht, eine Verbindung zur Datenbank herzustellen, als leere Zeichenfolge ('') vom lokalen Host identifiziert.
Identifizierung der Grundursache
Um den Fehler zu beheben, ist es wichtig, die Einstellungen und Berechtigungen des Benutzerkontos zu überprüfen. Mit dem Befehl „show grants“ können Sie die gewährten Berechtigungen für den aktuellen Benutzer anzeigen. Im bereitgestellten Beispiel werden die folgenden Gewährungen angezeigt:
GRANT USAGE ON *.* TO ''@'localhost'
Diese Ausgabe zeigt an, dass dem leeren Zeichenfolgenbenutzer von localhost USAGE-Berechtigungen für alle Datenbanken gewährt wurden. Dadurch kann der Benutzer zwar eine Verbindung zu MySQL herstellen, es wird jedoch keine Berechtigung zum Erstellen oder Bearbeiten von Datenbanken oder Tabellen erteilt.
Problem lösen
Um den Fehler zu beheben, müssen Sie kann dem gewünschten Benutzer die erforderlichen Berechtigungen erteilen. Da Sie derzeit jedoch keine Benutzer-ID haben, müssen Sie eine erstellen. Sie müssen jedoch ein Benutzerkonto mit den erforderlichen Berechtigungen erstellen, um den CREATE USER-Vorgang auszuführen.
Verwenden des Root-Kontos
Um sicherzustellen, dass Sie über die erforderlichen Berechtigungen verfügen Wenn Sie über keine Berechtigungen verfügen, können Sie versuchen, mit dem Root-Konto eine Verbindung zu MySQL herzustellen. Im bereitgestellten Beispiel waren die ersten Versuche, eine Verbindung als Root herzustellen, erfolglos. Um sich als Root anzumelden, sollten Sie den folgenden Befehl in Ihrer Bash-Shell und nicht in der MySQL-Befehlszeile ausführen:
mysql -u root -p
Geben Sie das Root-Passwort ein, wenn Sie dazu aufgefordert werden. Sobald Sie als Root angemeldet sind, können Sie mit der Erstellung eines neuen Benutzers mit den erforderlichen Berechtigungen fortfahren.
Das obige ist der detaillierte Inhalt vonMySQL-Zugriff verweigert: Wie kann der Fehler „Zugriff verweigert für Benutzer „@'localhost'' behoben und behoben werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!