Heim >Datenbank >MySQL-Tutorial >Warum erhalte ich beim Gewähren von Berechtigungen die Meldung „Zugriff für Benutzer ‚root'@'localhost' verweigert'?
Berechtigungen als „Root“ können nicht gewährt werden
Beim Versuch, Berechtigungen als Root-Benutzer mit allen erforderlichen Berechtigungen zu erteilen, kann es vorkommen, dass Fehler „Zugriff für Benutzer ‚root‘@‘localhost‘ verweigert.“ Dieses Problem tritt auf, wenn Sie versuchen, Berechtigungen für die nicht zulässigen mysql.users zu erteilen Tabelle.
Lösung:
Um dieses Problem zu beheben, gewähren Sie Berechtigungen für eine bestimmte Datenbank statt für alle Tabellen. Verwenden Sie die folgende Syntax:
GRANT ALL PRIVILEGES ON `%`.* TO '[user]'@'[hostname]' IDENTIFIED BY '[password]' WITH GRANT OPTION;
Hier steht % für eine beliebige Datenbank und Sie können den Datenbanknamen anstelle des Sternchens (*) angeben. Dieser Ansatz schließt die Tabelle mysql.users von den Berechtigungen aus, sodass Sie anderen Benutzern Berechtigungen gewähren können.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Gewähren von Berechtigungen die Meldung „Zugriff für Benutzer ‚root'@'localhost' verweigert'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!