Heim > Datenbank > MySQL-Tutorial > MySQL hat das Root-Passwort vergessen

MySQL hat das Root-Passwort vergessen

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2023-05-12 10:59:06
Original
626 Leute haben es durchsucht

MySQL ist ein häufig verwendetes relationales Datenbankverwaltungssystem, das häufig zum Erstellen von Webanwendungen und zum Verwalten von Daten verwendet wird. In MySQL ist der Root-Benutzer der Benutzer mit den höchsten Berechtigungen und wird normalerweise zur Verwaltung der gesamten Datenbank verwendet. In einigen Fällen kann es jedoch vorkommen, dass wir das Passwort des Root-Benutzers vergessen. In diesem Artikel werden einige gängige Methoden zum Zurücksetzen des MySQL-Root-Benutzerkennworts vorgestellt.

  1. Verwenden Sie mysqld_safe, um MySQL zu starten

Wenn Sie das Passwort des Root-Benutzers vergessen, sollten Sie als Erstes versuchen, mysqld_safe zum Starten des MySQL-Dienstes zu verwenden. Diese Methode startet MySQL, ohne dass ein Passwort erforderlich ist, und ermöglicht Ihnen, das Passwort des Root-Benutzers zu ändern. Die Schritte sind wie folgt:

Beenden Sie zunächst den MySQL-Dienst.

$ sudo systemctl stop mysql

Dann verwenden Sie mysqld_safe, um den MySQL-Dienst zu starten und geben Sie --skip-grant-tables an.

$ sudo mysqld_safe --skip-grant-tables &

--skip-grant-tables Der Parameter führt dazu, dass MySQL die Zugriffskontrollliste ignoriert, was bedeutet, dass jeder mit Root-Rechten eine Verbindung zum MySQL-Server herstellen kann. Aus diesem Grund sollten Sie sicherstellen, dass nur vertrauenswürdige Benutzer Zugriff auf den Server haben.

Stellen Sie als Nächstes in einem anderen Terminalfenster eine Verbindung zum MySQL-Server her.

$ mysql -u root

Führen Sie in der MySQL-Eingabeaufforderung den folgenden Befehl aus, um das Passwort des Root-Benutzers zu ändern.

mysql> UPDATE mysql.user SET subscription_string=PASSWORD('new_password') WHERE User='root';

Ersetzen Sie in diesem Befehl new_password durch Ihr neues Passwort.

Beenden Sie abschließend MySQL und starten Sie den MySQL-Dienst neu.

mysql> FLUSH PRIVILEGES;
mysql> quit;
$ sudo systemctl start mysql

Jetzt können Sie sich als Root-Benutzer mit dem neuen Passwort anmelden!

  1. Verwenden Sie das Skript mysql_secure_installation

Wenn Sie MySQL nicht mit mysqld_safe starten können, können Sie auch versuchen, das Kennwort des Root-Benutzers mit dem Skript mysql_secure_installation zurückzusetzen. Dieses Skript kann schnell einige Einstellungen für MySQL vornehmen, darunter das Zurücksetzen des Passworts des Root-Benutzers, das Löschen anonymer Benutzer, das Deaktivieren der Remote-Anmeldung usw.

Führen Sie zunächst den folgenden Befehl aus, um das Skript mysql_secure_installation zu installieren.

$ sudo apt-get update
$ sudo apt-get install mysql-server

Nachdem die Installation abgeschlossen ist, können Sie den folgenden Befehl verwenden, um das Skript mysql_secure_installation auszuführen.

$ sudo mysql_secure_installation

Während des laufenden Prozesses müssen Sie mehrere Fragen beantworten, darunter das Festlegen des Root-Benutzerkennworts, das Löschen anonymer Benutzer usw. Wenn Sie beim Festlegen eines Passworts das ursprüngliche Passwort des Root-Benutzers vergessen haben, können Sie es leer lassen und ein neues Passwort festlegen. Sobald alles eingerichtet ist, können Sie sich mit Ihrem neuen Passwort als Root anmelden.

  1. Starten Sie MySQL mit dem Parameter „skip-grant-tables“

Wenn keine der beiden oben genannten Methoden funktioniert, besteht der letzte Versuch darin, MySQL mit dem Parameter „skip-grant-tables“ zu starten. Obwohl diese Methode MySQL starten kann, bleibt die Datenbank in einem anfälligen Zustand und sollte nicht in einer Produktionsumgebung verwendet werden.

Suchen Sie zunächst die MySQL-Konfigurationsdatei my.cnf oder my.ini. Die Datei sollte die folgenden Zeilen enthalten:

[mysqld]
skip-grant-tables

Wenn die Datei nicht existiert, können Sie eine neue Datei erstellen, die beiden oben genannten Zeilen zur Datei hinzufügen und sie als my speichern. cnf oder my.ini.

Dann verwenden Sie den folgenden Befehl, um MySQL neu zu starten.

$ sudo systemctl restart mysql

Nach dem Neustart können Sie sich ohne Eingabe eines Passworts als Root-Benutzer bei MySQL anmelden. Geben Sie an der MySQL-Eingabeaufforderung den folgenden Befehl ein, um das Passwort des Root-Benutzers zu ändern.

mysql> UPDATE mysql.user SET subscription_string=PASSWORD('new_password') WHERE User='root';

Ersetzen Sie new_password durch Ihr neues Passwort, beenden Sie dann MySQL und starten Sie den MySQL-Dienst neu.

mysql> FLUSH PRIVILEGES;
mysql> quit;
$ sudo systemctl restart mysql

Jetzt können Sie sich als Root-Benutzer mit dem neuen Passwort anmelden!

Zusammenfassung

Das Vergessen des MySQL-Root-Benutzerpassworts ist ein häufiges Problem, aber es gibt mehrere Möglichkeiten, es zu lösen. In den meisten Fällen ist das Zurücksetzen des Passworts einfach mit dem Skript mysqld_safe oder mysql_secure_installation. Wenn diese Methoden nicht funktionieren, kann das Starten von MySQL mit dem Parameter „skip-grant-tables“ der letzte Ausweg sein, wird jedoch in einer Produktionsumgebung nicht empfohlen.

Das obige ist der detaillierte Inhalt vonMySQL hat das Root-Passwort vergessen. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage