,

MariaDB/MySQL Passwort vergessen und wieder zurücksetzen

Lesedauer 3 Minuten

Inhaltsverzeichnis

Es gibt viele schlimme Momente im Leben eines Administrators – einer dieser Momente ist die Feststellung, dass man ein wichtiges Passwort vergessen hat. Hält man doch seine Benutzer dazu an, sich wichtige Passwörter aufzuschreiben, ob auf Papier oder in einem Passwortmanager.

Eines der wichtigsten Passwörter ist das root-Passwort für MySQL/MariaDB. Hier gibt es keinen „Passwort zurücksetzen“-Link – es ist aber trotzdem möglich, auch ohne das alte Passwort zu kennen.

Die Vorgehensweise unterscheidet sich etwas, je nach Datenbankserver-Version. Hier findest du die Lösung.

MySQL/MariaDB root-Passwort neu vergeben

Zuerst loggst du dich per SSH (oder unter Windows mit „putty“) auf deinem easyname-Server ein. Du musst dafür root-Rechte haben.

In Ubuntu 20.04 ist die Standardkonfiguration des SQL-Servers so, dass jeder root-Benutzer des Systems auch root-Rechte in MySQL/MariaDB hat. In diesem Fall ist es nicht notwendig, das root-Passwort zu ändern.

Versuche zuerst, dich mit

sudo mysql

in die Konsole einzuloggen. Ist dir das gelungen, kannst du alle Datenbank-Operationen einfach durchführen.

MySQL/MariaDB root-Passwort neu vergeben

Hast du die Authentifizierungsmethode geändert, z.B. aus Sicherheitsgründen, muss der Datebankserver zur Änderung heruntergefahren werden.

Wichtig! Du solltest deine anderen Benutzer, sofern es welche gibt, darüber informieren und diese Änderung im Voraus ankündigen. Sämtliche Websites, die die Datenbank verwenden, sind in dieser Zeit eingeschränkt oder gar nicht erreichbar! Lege die Änderungszeit also so, dass möglichst wenige Benutzer und Website-Besucher davon betroffen sind!

MySQL/MariaDB herunterfahren

Zuerst prüfst du, welche Version du installiert hast.

mysql --version

Mögliche Ausgaben sind:

mysql  Ver 15.1 Distrib **10.3.25-MariaDB**, for debian-linux-gnu (x86\_64) using readline 5.2

und

mysql  Ver **8.0.23**-0ubuntu0.20.04.1 for Linux on x86\_64 ((Ubuntu))

Je nachdem, ob du MariaDB oder MySQL verwendest, unterscheidet sich der Befehl:

sudo systemctl stop mariadb

oder

sudo systemctl stop mysql

MySQL/MariaDB ohne Passwortabfrage starten

Um die Passwortabfrage zu übergehen, musst du den Datenbankserver so starten, dass er die Tabelle „Grant Tables“ nicht lädt. Hier sind die Benutzer mit Rechten und Passwörtern gespeichert. Da in diesem Fall aber auch andere Nutzer einfach ohne Passwort anmelden können, ist das ein Sicherheitsrisiko. In diesem Fall startest du den Server ohne Netzwerkkommunikation.

Der erste Befehl setzt die richtige Option, der Zweite startet den Datenbankserver, hier MariaDB.

sudo systemctl set-environment MYSQLD\_OPTS="--skip-grant-tables --skip-networking"

sudo systemctl start mariadb

Du kannst nun ohne Passworteingabe einloggen:

sudo mysql -u root
Root Login in MySQL ohne Passwort

Lade nun nachträglich die Tabelle mit den Userrechten:

FLUSH PRIVILEGES;

root-Passwort in MariaDB ändern

Verwendest du MariaDB, setzt du mit diesem Befehl ein neues root-Passwort:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'sicheres\_passwort';

wobei du ‚sicheres_passwort‘ durch ein sicheres neues Passwort ersetzt.

Hast du die Authentifizierungsmethode in MariaDB geändert, legst du mit den folgenden Befehlen fest, dass auch wirklich die Benutzer-Authentifizierung mit Passwort verwendet wird. Ansonsten hat die Änderung keinen Effekt.

root-Passwort in MariaDB ändern

root-Passwort in MySQL ändern

In MySQL wird die Änderung etwas anders vorgenommen:

ALTER USER 'root'@'localhost' IDENTIFIED WITH caching\_sha2\_password BY 'sicheres\_passwort';

MySQL/MariaDB wieder normal starten

Zuerst stellst du die normale Konfiguration wieder her

sudo systemctl unset-environment MYSQLD\_OPTS

Nun startest du den Datenbankserver neu

sudo systemctl restart mariadb

oder

sudo systemctl restart mysql

Du kannst mit diesem Befehl testen, ob das Passwort nun wieder abgefragt wird und ob du das richtige Passwort notiert hast:

mysql -u root -p
Root Login in mySQL mit Passwort

Hast du alles richtig gemacht, kannst du nun wieder in der Konsole arbeiten:

[Root Login in MySQL erfolgreich

Fazit Ein vergessenes root-Passwort für MySQL/MariaDB ist keine Katastrophe und kann recht schnell korrigiert werden. Bei Fragen stehen wir dir natürlich zur Verfügung!

easyname ist ein erfolgreicher und bekannter österreichischer Anbieter von Cloud-Services, Domains sowie Webhosting bis hin zur Server-Infrastruktur und gehört seit 2020 zur dogado group.
Das Unternehmen ist seit 2006 in Österreich erfolgreich am Markt und inzwischen auch in vielen anderen Ländern weltweit tätig. Sowohl das Team als auch die gehosteten Daten befinden sich in Österreich.

easyname liegt die Datensicherheit besonders am Herzen und stellt daher zu jedem Hosting-Paket auch kostenlose SSL-Zertifikate zur Verfügung. Mit intuitiven Tools zur Erstellung von Websites und Webshops und mit Easy Install Apps wie WordPress, Joomla oder PrestaShop können alle easyname-Kunden schnell in die Online-Welt einsteigen.