MySQL: Zugriff für Nicht-Root-Benutzer verweigert
Problem:
Beim Versuch Wenn Sie sich als Nicht-Root-Benutzer bei MySQL anmelden, wird die Fehlermeldung „Zugriff verweigert für Benutzer ‚test‘@‘localhost‘ (mit Passwort: JA)“ wird angezeigt, obwohl der Benutzer erstellt und Berechtigungen gewährt wurden.
Schritte zum Erstellen von Benutzern und Berechtigungen:
Problem mit Nicht-Root-Benutzerzugriff:
Das Problem tritt auf beim Versuch, sich als Nicht-Root anzumelden Benutzer.
Lösung:
Um den Fehler „Zugriff verweigert“ zu beheben, vermeiden Sie es, einem Nicht-Root-Benutzer alle Berechtigungen für alle Datenbanken zu gewähren. Diese Vorgehensweise ist nicht sicher und beeinträchtigt die Systemintegrität. Gewähren Sie dem Benutzer stattdessen nur die erforderlichen Berechtigungen.
Befehl erteilen:
Der folgende Befehl kann verwendet werden, um einem Benutzer bestimmte Berechtigungen zu gewähren:
GRANT <privileges> ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';
Zum Beispiel gewährt der folgende Befehl Berechtigungen zum Einfügen, Auswählen, Löschen und Aktualisieren für die Datenbank "test":
GRANT INSERT, SELECT, DELETE, UPDATE ON test.* TO 'user'@'localhost' IDENTIFIED BY 'password';
Zusätzliche Informationen:
Eine detaillierte Liste aller Berechtigungen finden Sie in der MySQL-Dokumentation. Um Informationen zu Benutzerhosts anzuzeigen, führen Sie die folgende Abfrage aus (angemeldet als „root“):
select Host, User from mysql.user;
Das obige ist der detaillierte Inhalt vonMySQL-Zugriff verweigert: Warum kann mein Nicht-Root-Benutzer keine Verbindung herstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!