Bei der Arbeit mit MySQL DBMS ist es äußerst wichtig zu wissen, wie man das Benutzerpasswort ändert. Es scheint, dass diese Aufgabe nur gelöst werden kann, wenn Sie Superuser-Rechte haben. Aber auch ein normaler Benutzer kann unter bestimmten Umständen das Passwort ändern. In diesem Artikel werden wir Ihnen erklären, wie Sie dies unter normalen Umständen tun können.
Sie können das Kennwort eines Benutzers auf verschiedene Weise ändern. In der MySQL-Umgebung gibt es zwei Befehle für diese Aufgabe - SET PASSWORD
und ALTER USER
. Wir werden Ihnen diese beiden Methoden im Detail vorstellen.
Zu Beginn dieses Jahres gibt es zwei Hauptversionen von MySQL. Die erste ist veraltet, wird aber noch unterstützt (Version 5.7), und die aktuellste ist Version 8.0. Wie kann man die MySQL-Version herausfinden? Sie können dies mit einem speziellen Befehl tun, der im Terminal ausgeführt werden sollte:
$ mysql –version
Wie Sie im obigen Bild sehen können, wird Version 8.0.28 verwendet, aber es ist wichtig zu beachten, dass ALTER USER
nur in früheren Versionen von MySQL relevant ist.
Um in die Konsole zu gelangen, müssen Sie sich bei MySQL mit Ihrem Login und Passwort anmelden. Wenn ein Benutzer bereits auf dem Server autorisiert ist, sollten Sie alle Aktionen in seinem Namen durchführen. Wenn Sie MySQL zum ersten Mal benutzen, sollten Sie root-Rechte verwenden.
Der Befehl, um sich als root anzumelden:
$ mysql -u root –p
Danach wird eine Passwortabfrage angezeigt. Es bleibt, das Passwort einzugeben, die Eingabetaste zu drücken, unmittelbar danach wird die MySQL-Schnittstelle mit allen verfügbaren Befehlen geladen.
Die Besonderheit von MySQL ist, dass es einen eigenen Host hat, an den ein Konto gebunden ist. Beachten wir die drei wichtigsten Hosts:
Localhost erlaubt nur eine lokale Anmeldung ohne Fernzugriff, % bedeutet, dass das Konto von jedem beliebigen Host aus verwendet werden kann, IP-Adresse/Domänenname bedeutet, dass das Konto nur unter dem ausgewählten Domänennamen/IP-Adresse verwendet werden kann.
Um den Hosttyp des Kontos herauszufinden, müssen wir die folgende SQL-Abfrage ausführen:
$ SELECT user, host FROM mysql.user
In der obigen Abbildung sehen wir, dass der Benutzer alex einen Host von % hat. Dieser Host sollte beim Ändern des Passworts verwendet werden. Benutzer in MySQL und alle Informationen über Benutzer werden in der MySQL-Datenbank in der Tabelle user gespeichert.
Sie können das Passwort auch mit dem Befehl SET PASSWORD
ändern. Um das Passwort für den Benutzer alex mit host % in somepassword666 zu ändern, müssen Sie den folgenden Befehl verwenden:
$ SET PASSWORD FOR 'alex'@'%' = 'somepassword666';
Sie können den Benutzercode mit einem anderen Befehl ändern - ALTER USER
. Um das Passwort für den Benutzer alex mit dem Host % in ein anderes Passwort666 zu ändern, führen wir eine SQL-Abfrage aus:
$ ALTER USER 'alex'@'%' IDENTIFIED BY 'anotherpassword666';
Bitte beachten Sie, dass Benutzername und Host in einfache Anführungszeichen eingeschlossen sind, ohne diese Anführungszeichen kann MySQL die Zeichenfolge nicht erkennen.
Setzen Sie nun den Berechtigungs-Cache zurück:
$ FLUSH PRIVILEGES;
Nachdem Sie das Passwort geändert, die Zugriffsrechte geändert und den Cache zurückgesetzt haben, sollten Sie eine Anmeldeüberprüfung als der Benutzer, dessen Passwort geändert wurde, durchführen.
Beenden
Sie die MySQL-Shell, indem Sie den Befehl exit
ausführen:
$ exit
Melden Sie sich nun an der Shell an:
$ mysql -u alex -p
Wenn Sie bei der Anmeldung die Eingabeaufforderung des Systems sehen, haben Sie alles richtig gemacht, was bedeutet, dass das Passwort erfolgreich geändert wurde.
Apply the discount by inserting the promo code in the special field at checkout:
Apply the discount by inserting the promo code in the special field at checkout: