Gehen Sie wie zuvor in Schritt 2 vor, das heißt, starten Sie den mysql-Daemon im abgesicherten Modus neu.
Geben Sie den Befehl
ausselect user,host,password from mysql.user where user='root';
Ausschneiden und Einfügen der Ausgabe in einen Texteditor zum Vergleich (der gehashten Kennwortspaltenwerte) vor und nach dem Folgenden.
Beachten Sie für jede Zeile den host
Säule. Im folgenden Beispiel gehe ich davon aus, dass ich zwei Zeilen habe. Eine Zeile hat %
als Host hat der nächste localhost
Für jede Zeile, die einen host
hatte Variante geben Sie einen Befehl aus. In meinem obigen Beispiel würde ich also insgesamt 2 Befehle ausgeben, wie zum Beispiel:
SET PASSWORD FOR 'root'@'%' = PASSWORD('MyNewPassword');
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
ausführen
select user,host,password from mysql.user where user='root';
ausschneiden und in den Texteditor einfügen. Beachten Sie die Änderung an den Passwort-Hashes.
Beenden Sie den Daemon aus dem abgesicherten Modus und starten Sie ihn normal neu.
Versuchen Sie, sich mit MyNewPassword
als root anzumeldenHier sind ein paar Links. Die für SET PASSWORD Syntax , und oft ein nächster Schritt für die GRANT-Syntax .
Für den engen Anwendungsbereich dieser Frage, nämlich das Login, wären die Zuschüsse nicht erforderlich. Aber ohne die richtigen Berechtigungen für Datenbanken wäre man in einer Sandbox und nicht in der Lage, viel zu tun, außer einfachen Befehlen wie select now();
Ich schlage nicht vor, dass Ihr Root-Benutzer keine Berechtigungen hat, sobald das Passwort geändert wurde. Die Grants sind für normale Benutzer notwendig, um sicherzugehen.