Heim > Datenbank > MySQL-Tutorial > Hauptteil

So reparieren Sie das MySQL-Passwort, wenn ich es vergesse

WBOY
Freigeben: 2023-06-02 15:22:21
nach vorne
2643 Leute haben es durchsucht

Zunächst müssen wir verstehen, wie MySQL-Passwörter gespeichert werden. MySQL speichert Passwörter als verschlüsselte Hash-Strings mithilfe der Verschlüsselungsfunktion SHA1() und einer zufälligen Zeichenfolge namens Salt. Da der Verschlüsselungsprozess von MySQL-Passwörtern irreversibel ist, müssen wir einige spezifische Maßnahmen ergreifen, um ihn wiederherstellen zu können.

Methode 1: Verwenden Sie den Root-Benutzer, um das Passwort zu ändern

Wenn Sie über Root-Berechtigungen verfügen, können Sie die folgenden Schritte verwenden, um das Passwort zu ändern:

#🎜 🎜#1. Melden Sie sich mit root beim MySQL-Server an als

mysql -u root -p

mysql -u root -p

2.输入root用户密码

3.进入MySQL命令行

4.进入mysql命令行后,使用以下命令来修改root用户密码:

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');

请将“new_password”替换为您要设置的新密码,并确保在MySQL命令行的末尾添加分号;

5.退出MySQL,使用新密码重新登录

在使用MySQL时,root用户具有最高的权限,因此如果您知道root用户的密码,那么修改MySQL的密码就变得非常简单了。

方法二:重置MySQL密码

如果您无法通过root用户来修改密码,或者根本不知道root密码,那么重置MySQL密码可能是您的最佳选择。以下是两种常用的重置MySQL密码的方法:

方法1:使用skip-grant-tables重置MySQL密码

这种方法将跳过MySQL的用户认证过程,并允许您无需提供密码就可以登录MySQL。以下是具体步骤:

1.停止MySQL服务

sudo systemctl stop mysql

2.执行以下命令以跳过MySQL的用户认证过程:

sudo mysqld_safe --skip-grant-tables &

3.以root身份登录MySQL服务器

mysql -u root

4.在进入MySQL命令行后,使用以下命令来修改密码:

mysql> UPDATE mysql.user SET Password=PASSWORD('new_password') WHERE User='root';

请将“new_password”替换为您要设置的新密码,并确保在MySQL命令行的末尾添加分号;

5.刷新mysql.user表

mysql> FLUSH PRIVILEGES;

6.退出MySQL,并重新启动MySQL

sudo systemctl start mysql

7.使用新密码重新登录MySQL

方法2:使用重置脚本重置MySQL密码

这种方法需要您以root身份运行脚本,并且需要知道MySQL的数据文件所在位置。以下是具体步骤:

1.停止MySQL服务

sudo systemctl stop mysql

2.找到MySQL的数据文件

默认情况下,MySQL将其数据文件存储在/var/lib/mysql目录中。执行以下命令可以找到数据文件的确切位置:

sudo find / -name "*.frm"

3.创建重置脚本

请使用以下命令将以下代码保存到resetmysql.sh文件中:

#!/bin/bash
/usr/sbin/mysqld --skip-grant-tables --skip-networking  &
sleep 5s

mysql -u root <<EOF
UPDATE mysql.user SET Password=PASSWORD(&#39;new_password&#39;) WHERE User=&#39;root&#39;;
FLUSH PRIVILEGES;
EOF

killall mysqld
sleep 5s
/usr/sbin/mysqld --skip-networking &
Nach dem Login kopieren

请将“new_password”替换为您要设置的新密码。

4.运行脚本重置MySQL密码

使用以下命令以root权限运行重置脚本:

sudo bash resetmysql.sh

5.启动MySQL

sudo systemctl start mysql2. Geben Sie das Root-Benutzerpasswort ein. 🎜🎜#

3. Geben Sie die MySQL-Befehlszeile ein

4. Ändern Sie nach Eingabe der MySQL-Befehlszeile das Root-Benutzerkennwort:

mysql> SET PASSWORD FOR 'root'@'localhost ' = PASSWORD('new_password');#🎜🎜##🎜🎜#Bitte ersetzen Sie „new_password“ durch das neue Passwort, das Sie festlegen möchten, und erstellen Sie es Fügen Sie am Ende der MySQL-Befehlszeile unbedingt ein Semikolon hinzu. #🎜🎜 ##🎜🎜#5 Beenden Sie MySQL und melden Sie sich erneut mit einem neuen Passwort an Wenn Sie also das Passwort des Root-Benutzers kennen, ist das Ändern des MySQL-Passworts ganz einfach. Es ist sehr einfach geworden. #🎜🎜##🎜🎜#Methode 2: MySQL-Passwort zurücksetzen #🎜🎜##🎜🎜#Wenn Sie das Passwort nicht über den Root-Benutzer ändern können oder das Root-Passwort überhaupt nicht kennen, kann es sein, dass Sie das MySQL-Passwort zurücksetzen Ihre beste Option Beste Wahl. Im Folgenden sind zwei häufig verwendete Methoden zum Zurücksetzen des MySQL-Passworts aufgeführt: #🎜🎜##🎜🎜#Methode 1: Verwenden Sie Skip-Grant-Tables, um das MySQL-Passwort zurückzusetzen. #🎜🎜##🎜🎜#Diese Methode überspringt den MySQL-Benutzerauthentifizierungsprozess und ermöglicht Ihnen die Anmeldung bei MySQL, ohne ein Passwort anzugeben. Im Folgenden sind die spezifischen Schritte aufgeführt: #🎜🎜##🎜🎜#1. Stoppen Sie den MySQL-Dienst #🎜🎜##🎜🎜#sudo systemctl stop mysql#🎜🎜##🎜🎜#2. Führen Sie den folgenden Befehl aus, um den MySQL-Benutzerauthentifizierungsprozess zu überspringen: #🎜🎜##🎜🎜#sudo mysqld_safe --skip-grant-tables &amp;#🎜🎜##🎜🎜#3. Melden Sie sich an den MySQL-Server als Root #🎜🎜##🎜🎜#mysql -u root#🎜🎜##🎜🎜#4 Nachdem Sie die MySQL-Befehlszeile eingegeben haben, verwenden Sie den folgenden Befehl, um das Passwort zu ändern: #🎜🎜##🎜🎜 #mysql> UPDATE mysql.user SET Password=PASSWORD('new_password') WHERE User='root';#🎜🎜##🎜🎜#Bitte ersetzen Sie „new_password“ mit dem neuen Passwort, das Sie festlegen möchten, und stellen Sie sicher, dass Sie am Ende der MySQL-Befehlszeile ein Semikolon hinzufügen. Beenden Sie MySQL und starten Sie MySQL neu >sudo systemctl start mysql#🎜🎜##🎜🎜#7. Melden Sie sich erneut mit dem neuen Passwort MySQL an#🎜🎜##🎜🎜#Methode 2: Verwenden Sie das Reset-Skript, um das MySQL-Passwort zurückzusetzen#🎜🎜 ##🎜🎜#Diese Methode erfordert, dass Sie das Skript als Root ausführen und den Speicherort der MySQL-Datendateien kennen. Im Folgenden sind die spezifischen Schritte aufgeführt: #🎜🎜##🎜🎜#1. Stoppen Sie den MySQL-Dienst #🎜🎜##🎜🎜#sudo systemctl stop mysql#🎜🎜##🎜🎜#2. Finden Sie die MySQL-Datendateien#🎜🎜##🎜🎜#Standardmäßig speichert MySQL seine Datendateien im Verzeichnis /var/lib/mysql. Den genauen Speicherort der Datendateien können Sie ermitteln, indem Sie den folgenden Befehl ausführen: #🎜🎜##🎜🎜#sudo find / -name "*.frm"#🎜🎜##🎜🎜#3 . Erstellen Sie ein Reset-Skript #🎜🎜##🎜🎜# Bitte verwenden Sie den folgenden Befehl, um den folgenden Code in der Datei resetmysql.sh zu speichern: #🎜🎜#rrreee#🎜🎜# Bitte ersetzen Sie „new_password“ durch das gewünschte neue Passwort einstellen. #🎜🎜##🎜🎜#4. Führen Sie das Skript aus, um das MySQL-Passwort zurückzusetzen. #🎜🎜##🎜🎜#Verwenden Sie den folgenden Befehl, um das Reset-Skript mit Root-Rechten auszuführen: #🎜🎜##🎜🎜# sudo bash resetmysql. sh#🎜🎜##🎜🎜#5. Starten Sie MySQL#🎜🎜##🎜🎜#sudo systemctl start mysql#🎜🎜##🎜🎜#6. Mit neuem Passwort neu starten Melden Sie sich bei MySQL an#🎜🎜##🎜🎜#Zu diesem Zeitpunkt sollten Leser bereits die folgenden zwei Methoden kennen, um das Problem des vergessenen MySQL-Passworts zu lösen: Verwenden Sie den Root-Benutzer, um das Passwort zu ändern, und verwenden Sie den Reset MySQL-Passwortskript zum Zurücksetzen des Passworts. #🎜🎜#

Das obige ist der detaillierte Inhalt vonSo reparieren Sie das MySQL-Passwort, wenn ich es vergesse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage