Einführung
Die meisten MySQL-Benutzer stießen auf den ERROR 1698 (28000):Access denied for user ‘root’@’localhost’ . Diese Fehlermeldung erscheint normalerweise bei Neuinstallationen von MySQL, wenn Sie versuchen, sich mit dem Root mit MySQL zu verbinden Benutzer.
Diese Anleitung zeigt Ihnen, wie Sie die Zugriffsverweigerung für den Benutzer root on schnell beheben können lokaler Host . Die skizzierten Anweisungen gelten sowohl für MySQL als auch für MariaDB. Es müssen keine Tabellen geändert oder komplexe Konfigurationen vorgenommen werden.
Voraussetzungen
- Zugriff auf eine Befehlszeile oder ein Terminalfenster
- MySQL oder MariaDB installiert
- Benutzer mit sudo oder root Privilegien
Root für den Zugriff auf MySQL verwenden
Wenn Sie MySQL installieren und versuchen, mit dem Root-Benutzer auf dem lokalen Rechner darauf zuzugreifen, verwenden Sie den folgenden Befehl:
mysql -u root -p
In den meisten Fällen erhalten Sie die Fehlermeldung Access denied for user ‘root’@’localhost’ .
Sie können den Zugriff für root aktivieren mit einem MySQL-Befehl.
Lösen Sie den Fehler „Zugriff verweigert für Benutzer-Root“
Um sich als root bei MySQL anmelden zu können, verwenden Sie zuerst sudo
um den Root-Benutzer zu ändern:
sudo mysql
Geben Sie Ihr Passwort an der Eingabeaufforderung ein. Eine MySQL-Shell wird geladen.
Verwenden Sie den ALTER USER
Befehl und ändern Sie die Authentifizierungsmethode, um sich bei MySQL als root anzumelden :
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'insert_password';
Dieser Befehl ändert das Passwort für den Benutzer root und setzt die Authentifizierungsmethode auf mysql_native_password . Dies ist eine herkömmliche Authentifizierungsmethode und nicht so sicher wie auth_plugin . Im obigen Beispiel haben wir „root“ als Passwort festgelegt, aber wir empfehlen Ihnen, ein stärkeres Passwort festzulegen.
Testen Sie den Root-Benutzer-MySQL-Zugriff
Nachdem Sie die oben aufgeführten Befehle ausgeführt haben, beenden Sie die MySQL-Shell, indem Sie STRG + D drücken auf Ihrer Tastatur oder geben Sie exit;
ein und drücken Sie Enter . Ein Neustart von mysqld ist nicht erforderlich Dienst, um sich anzumelden.
Versuchen Sie nun erneut, mit root auf MySQL zuzugreifen. Geben Sie im Terminal ein:
mysql -u root -p
Geben Sie das Passwort ein, das Sie mit ALTER USER
verwendet haben Befehl. Geben Sie nicht das Systemkennwort ein, um auf MySQL zuzugreifen, da dies nicht funktioniert. Wenn alles gut funktioniert hat, sollten Sie die MySQL-Willkommensnachricht sehen.