Heim > Datenbank > MySQL-Tutorial > Warum fehlen meinem MySQL/MariaDB-Root-Benutzer Berechtigungen und es wird „Zugriff verweigert' angezeigt?

Warum fehlen meinem MySQL/MariaDB-Root-Benutzer Berechtigungen und es wird „Zugriff verweigert' angezeigt?

Barbara Streisand
Freigeben: 2024-12-10 01:36:10
Original
379 Leute haben es durchsucht

Why Does My MySQL/MariaDB Root User Lack Privileges, Showing

"Zugriff verweigert für Benutzer 'root'@'localhost' (mit Passwort: JA) - Keine Berechtigungen?"

Dieser Fehler tritt auf wenn dem Root-Benutzer von MySQL die notwendigen Berechtigungen fehlen, um einen Vorgang auszuführen.

Null-Schema des Root-Benutzers Privilegien

Normalerweise hat der Root-Benutzer volle Privilegien. In diesem Fall wird jedoch berichtet, dass die Schemaberechtigungen des Roots null sind, was darauf hinweist, dass er über keinerlei Berechtigungen verfügt.

Auswirkungen auf verschiedene Plattformen

Dieses Problem betrifft die des Benutzers Fähigkeit, den MySQL-Server plattformübergreifend zu betreiben. Der Benutzer stößt auf Hindernisse, selbst wenn er als „[email protected]“ angemeldet ist.

Versuche zur Fehlerbehebung

Der Benutzer hat verschiedene Lösungen ausprobiert, z. B. „FLUSH HOSTS“ und „FLUSH PRIVILEGES“, aber diese haben sich als erfolglos erwiesen.

Lösung für MySQL 5.7

Wenn dieses Problem in MySQL 5.7 oder höher auftritt, besteht die Lösung darin, die passwortbasierte Authentifizierung zu aktivieren:

  1. Führen Sie die folgende SQL aus Abfrage:

    SELECT user, authentication_string, plugin, host FROM mysql.user;
    Nach dem Login kopieren
  2. Beachten Sie, dass der „authentication_string“ für den Root-Benutzer vorhanden sein sollte nicht leer sein. Wenn dies der Fall ist, aktualisieren Sie es mit dem aktuellen Root-Passwort:

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<Current-Root-Password>';
    Nach dem Login kopieren
  3. Berechtigungen löschen:

    FLUSH PRIVILEGES;
    Nach dem Login kopieren

Lösung für MariaDB

Verwenden Sie für MariaDB die folgende Abfrage, um die Root-Benutzer festzulegen Passwort:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('manager');
Nach dem Login kopieren

Weitere Informationen finden Sie unter https://mariadb.com/kb/en/set-password/.

Hinweis:

Nachdem Sie Authentifizierungs-Plugins deaktiviert oder das Passwort des Root-Benutzers geändert haben, wird empfohlen, zur Verbesserung den Befehl „mysql_secure_installation“ auszuführen Sicherheit.

Das obige ist der detaillierte Inhalt vonWarum fehlen meinem MySQL/MariaDB-Root-Benutzer Berechtigungen und es wird „Zugriff verweigert' angezeigt?. 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