Heim >Datenbank >MySQL-Tutorial >MySQL-Passwort vergessen
MySQL ist ein häufig verwendetes relationales Datenbankverwaltungssystem, das zur Datenspeicherung, Datenverarbeitung und Datenanalyse verwendet werden kann. Bei der Verwendung von MySQL kann es vorkommen, dass wir das Passwort vergessen. Wenn dieses Problem nicht rechtzeitig behoben wird, wird es unnötige Auswirkungen auf unsere Arbeit und Daten haben. In diesem Artikel zeige ich den Lesern, wie sie mit dem Problem umgehen können, wenn Sie Ihr MySQL-Passwort vergessen.
Zuerst 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 dieser Verschlüsselungsprozess irreversibel ist, müssen wir einige spezifische Maßnahmen ergreifen, um das MySQL-Passwort wiederherzustellen.
Als nächstes stelle ich den Lesern einige häufig verwendete Methoden zum Wiederherstellen von MySQL-Passwörtern vor:
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 als Root beim MySQL-Server an Geben Sie die MySQL-Befehlszeile ein und verwenden Sie den folgenden Befehl, um das Root-Benutzerkennwort zu ändern:
mysql> „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. <code>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('new_password') WHERE User='root'; FLUSH PRIVILEGES; EOF killall mysqld sleep 5s /usr/sbin/mysqld --skip-networking &
请将“new_password”替换为您要设置的新密码。
4.运行脚本重置MySQL密码
使用以下命令以root权限运行重置脚本:
sudo bash resetmysql.sh
5.启动MySQL
sudo systemctl start mysql
sudo systemctl stop mysql
🎜🎜2. Führen Sie den folgenden Befehl aus, um den Benutzerauthentifizierungsprozess von MySQL zu überspringen: 🎜🎜 sudo mysqld_safe --skip-grant-tables &
🎜🎜3. Melden Sie sich beim MySQL-Server als root an🎜🎜mysql -u root
🎜🎜4. 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“ durch das neue Passwort, das Sie festlegen möchten, und stellen Sie sicher, dass Sie am Ende der MySQL-Befehlszeile ein Semikolon hinzufügen. 🎜🎜mysql> MySQL und MySQL neu starten 🎜🎜<code>sudo systemctl start mysql
🎜🎜7 Melden Sie sich mit dem neuen Passwort erneut bei MySQL an🎜🎜Methode 2: Verwenden Sie das Reset-Skript, um das MySQL-Passwort zurückzusetzen🎜🎜Diese Methode erfordert um das Skript als Root auszuführen und muss die Datendateien des MySQL-Speicherorts kennen. Das Folgende sind die spezifischen Schritte: 🎜🎜1. Stoppen Sie den MySQL-Dienst 🎜🎜sudo systemctl stop mysql
🎜🎜2. Suchen Sie die MySQL-Datendatei 🎜🎜MySQL speichert die Datendatei in /var/lib /mysql-Verzeichnis standardmäßig deaktiviert. 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 Speichern Sie den folgenden Code, um ihn zurückzusetzenmysql In der .sh-Datei: 🎜rrreee🎜Bitte ersetzen Sie „new_password“ durch das neue Passwort, das Sie festlegen möchten. 🎜🎜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. Melden Sie sich erneut 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 das Skript zum Zurücksetzen des MySQL-Passworts, um das Passwort zurückzusetzen. 🎜🎜Fazit: 🎜🎜Wenn wir MySQL als Datenbank verwenden, ist das Vergessen des Passworts ein häufiges Problem. In diesem Artikel werden zwei mögliche Lösungen zur Lösung des Problems vergessener Passwörter in MySQL vorgestellt. Wenn Sie ein Benutzer ohne MySQL-Erfahrung sind, ändern Sie die MySQL-Konfigurationsdatei nicht nach Belieben. Wenn Sie mit den oben vorgestellten Methoden nicht sehr vertraut sind, wenden Sie sich bitte an einen Fachmann, der Ihnen bei der Lösung der damit verbundenen Probleme hilft. 🎜Das obige ist der detaillierte Inhalt vonMySQL-Passwort vergessen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!