MySQL Root-Passwort ändern
Diese Anleitung erklärt, wie Sie ein verlorenes oder vergessenes root-Passwort für MySQL oder MariaDB auf Ihrem Linux-Server zurücksetzen. Sie starten die Datenbank vorübergehend ohne Berechtigungsprüfung, setzen ein neues Passwort und starten den Dienst anschließend wieder normal.
Achtung: Dieser Vorgang erfordert einen Neustart des Datenbankservers und umgeht vorübergehend die normalen Sicherheitsprüfungen. Führen Sie diese Schritte mit Vorsicht durch — am besten während eines Wartungsfensters ohne aktive Datenbankverbindungen.
Schritt 1: MySQL im Safe Mode neu starten
Stoppen Sie den laufenden MySQL-Dienst und starten Sie ihn mit der Option --skip-grant-tables neu. Diese deaktiviert die Berechtigungsprüfungen und ermöglicht die Anmeldung ohne Passwort; --skip-networking sperrt währenddessen den Zugriff über das Netzwerk. Bei MariaDB unter Debian oder Ubuntu heißt der Dienst mariadb — und root kann sich als System-Benutzer root oft ohne Passwort per mysql anmelden. Probieren Sie das zuerst aus.
Die erste Zeile legt das Socket-Verzeichnis an, das beim Stoppen des Dienstes entfernt wird. Das & am Ende führt den Prozess im Hintergrund aus, sodass Sie das Terminal weiterhin nutzen können.
Schritt 2: Mit MySQL verbinden
Sobald der Server im Safe Mode läuft, verbinden Sie sich als root-Benutzer — zu diesem Zeitpunkt ist kein Passwort erforderlich.
Schritt 3: Neues Passwort setzen
Führen Sie folgende SQL-Befehle aus, um das Root-Passwort zu ändern. FLUSH PRIVILEGES lädt zuerst die Berechtigungstabellen neu — ohne diesen Befehl schlägt ALTER USER im Safe Mode fehl. Ersetzen Sie MeinNeuesPasswort durch Ihr eigenes sicheres Passwort.
Die folgenden Befehle gelten für MySQL 5.7.6+ und MariaDB 10.1.20+. Ältere Versionen nutzten UPDATE mysql.user SET Password=..., was veraltet ist und nicht mehr verwendet werden sollte.
Schritt 4: MySQL normal neu starten
Stoppen Sie den manuell gestarteten Safe-Mode-Prozess (dabei werden Sie nach dem neuen Passwort gefragt) und starten Sie MySQL normal, damit alle Sicherheitsprüfungen wieder aktiv sind.
Das MySQL-Root-Passwort wurde erfolgreich geändert und der Server läuft wieder normal mit allen aktiven Sicherheitsprüfungen.
Weiterführende Dokumentation
Für erweiterte MySQL-Konfiguration und Administration empfehlen wir die offizielle Dokumentation.