Heute bat mich jemand darum, eine neue Datenbank anzulegen. Doch fehlte mir das Root-Passwort, um einen neuen Benutzer + Datenbank anzulegen. Das Problem ließ sich jedoch fixen ;)
Vorbereitung
Zunächst müssen wir einige Vorbereitungen treffen. Legt eine Datei in
/var/lib/mysql/
an. Danach müssen wir der Datei noch dem entsprechenden Benutzer zuweisen, damit mysql die lesen kann.
chown mysql:mysql /var/lib/mysql/datei.txt
In die Datei kommen dann folgende Zeilen:
1 2 |
|
Diese Datei speichern wir nun ab.
MySQL Passwort zurücksetzen
Nun müssen wir den laufenden MySQL-Server zunächst stoppen.
/etc/init.d/mysqld stop
Wir starten nun im Safe-Modus den MySQL Server:
mysqld_safe --init-file=/var/lib/mysql/datei.txt
Der MySQL Server startet nun, und führt die in der Datei steckenden Befehle aus.
Feinschliff
Nun sollten wir uns wieder mit dem root-Benutzer einloggen können.
mysql -u root -p
Jetzt sollte man nur noch das Passwort ändern, und die angelegte Datei entfernen.
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('ganzneuespw');
Danach aus der MySQL-Shell ausloggen.
mysql> exit;
Nun löschen wir die angelegte Datei und starten den Server neu.
rm /var/lib/mysql/datei.txt
/etc/init.d/mysqld restart
Fazit
Nun könnt ihr wieder ganz normal mit dem Root-Account Benutzer anlegen, Datenbanken erstellen, und weitere Datenbanoperationen ausführen.
Gruß
gehaxelt