LINUXMAKER, OpenSource, Tutorials

MySQL: Root-Passwort retten

Ab und zu kann es passieren, dass man sein Root-Passwort für den MySQL-Root vergessen hat. Um einer Neuinstallation von MySQLvorzubeugen, werden hier Lösungswege gezeigt, mit denen man sich wieder Zugriff zu MySQL verschaffen kann.


Grundsätzlich kann man das Rootpasswort so setzen

  1. Öffnen Sie auf dem Server eine Root-Konsole.

  2. Geben Sie folgenden Befehl ein: 

# mysqladmin --user=root --password=<altes_pw> password <neues_pw>

Wenn man aber nicht mehr als Root reinkommt helfen diese zwei Wege.

Der Weg über die Shell

Dabei wird MySQL gestoppt, um dann eine MySQL-Initialisierungs-Datei beim sicheren MySQL-Start aufzurufen.

# /etc/init.d/mysql stop
# echo "SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');" >~/setrootpassword.sql
# mysqld_safe --init-file=~/setrootpassword.sql

Anschließend wird dieser Prozeß wieder gestoppt

[ctrl]+[c]

oder mit

# ps aux | grep mysql
# root      3313  0.0  0.0  11008  1364 ?        S    08:10   0:00 /bin/sh /usr/bin/mysqld_safe
# kill 3313

Danach kann MySQL wieder normal gestartet werden. Und nach einem Löschen der Passwortdatei kann man sich wieder auf dem MySQL-Monitor einloggen.

/etc/init.d/mysql start
rm -f ~/setrootpassword.sql

Sollten alle User weg sein, so kann man auch einen neuen root-User anlegen. Statt SET PASSWORD ... wird dann folgender MySQL-Befehl gesetzt werden:

GRANT ALL PRIVILEGES TO root@localhost IDENTIFIED BY 'MyNewPassword';