Heim >Datenbank >MySQL-Tutorial >Warum erhalte ich beim Gewähren von Berechtigungen die Meldung „Zugriff für Benutzer ‚root'@'localhost' verweigert'?

Warum erhalte ich beim Gewähren von Berechtigungen die Meldung „Zugriff für Benutzer ‚root'@'localhost' verweigert'?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-10 07:34:13923Durchsuche

Why Am I Getting

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!

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