Manchmal setzt der Benutzer bei der MySQL-Installation kein Root-Passwort, dann wird die Methode unix_socket
als Autorisierung verwendet. Wenn diese Autorisierung verwendet wird, kann sich nur ein Superuser des Systems oder ein Benutzer mit sudo-Rechten als root-Benutzer authentifizieren.
Bei der Verwendung von mysql_secure_installation
wird versucht, das Passwort zu ändern. In diesem Fall erhalten Sie eine Fehlermeldung von mysql SET PASSWORD
has no significance for user'root
'@
'localhost
'. Wir sagen Ihnen, wie Sie diesen Fehler lösen und beseitigen können.
Der vollständige Name des Fehlers lautet wie folgt:
SET PASSWORD has no significance for user 'root'@'localhost' as the authentication method used doesn't store authentication data in the MySQL server. Please consider using ALTER USER instead if you want to change authentication parameters.
Der Fehler wird übersetzt als:
"Es hat keinen Sinn, die Methode SET PASSWORD
für'root
'@
'localhost
' auszuführen, da die ausgewählte Autorisierungsmethode das Speichern von Autorisierungsdaten nicht unterstützt. Wenn Sie die Autorisierungsparameter ändern wollen, verwenden Sie ALTER USER
."
Die Autorisierungsmethode unix_socket speichert keine Passwörter, sie führt keine Autorisierung per Passwort durch, sie prüft, ob ein bestimmter Benutzer die Superuser-Bedingungen erfüllt. Und es gibt keine Möglichkeit für einen Benutzer, das Setzen des Root-Passworts einfach zu überspringen (wenn es noch nicht gesetzt wurde). Aus diesem Grund erlaubt Ihnen die Software nicht, fortzufahren. Sie können das Problem beheben, indem Sie eine Verbindung zu MySQL herstellen.
Außerdem müssen Sie gleichzeitig die Autorisierungsmethode und das Passwort ändern:
sudo mysql
In der SQL-Umgebung müssen Sie den folgenden Befehl ausführen:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Schließen Sie den MySQL-Client mit diesem Befehl:
exit;
Nachdem Sie mysql_secure_installation
ausgeführt haben, geben Sie das root-Passwort
ein. Danach können Sie die Konfiguration ohne Probleme abschließen. Bitte beachten Sie, dass Sie sich danach mit sudo ohne Passwort mit mysql verbinden können, da die Passwort-Autorisierungsmethode aktiviert ist. Um nach der mysql_secure_installation
zu den vorherigen Einstellungen zurückzukehren, verbinden Sie sich mit MySQL.
Verwenden Sie das Passwort und führen Sie es aus:
ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
Das war's - die Anleitung ist fertig.