Schritt 1: Stoppen Sie die Ausführung des MySQL-Prozesses
[root@mysql ~]# service mysqld stop
Shutting down MySQL.... SUCCESS!
Schritt 2: Ändern Sie die Konfigurationsdatei
und fügen Sie die folgenden Felder in [mysql] hinzu:
[root@mysql mysql]# vim /etc/my.cnf
[mysqld]
user=mysql #指定启动MySQL进程的用户
skip-grant-tables #跳过密码验证
Schritt 3: Starten Sie den MySQL-Prozess
[root@mysql mysql]# service mysqld start 启动MySQL进程
Starting MySQL. SUCCESS!
Schritt 4: Melden Sie sich bei MySQL an, akzeptieren Sie das Passwort nicht, geben Sie das Passwort ein, drücken Sie direkt die Eingabetaste und ändern Sie dann das Passwort:
[root@mysql-2 mysql]# mysql -usc -p
mysql> alter user 'sc'@'%' identified by 'Sanchuang123#'; --》会报错
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> flush privileges; #刷新权限(会加载原来没有加载的权限表--》用户名和密码所在的表user等)
Query OK, 0 rows affected (0.01 sec)
root@(none) 10:35 scmysql>alter user 'sc'@'%' identified by 'Sanchuang123#';
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
Schritt 5: Ändern Sie die MySQL-Konfigurationsdatei erneut
[mysqld]
socket=/data/mysql/mysql.sock
#user=mysql --》注释掉
#skip-grant-tables --》注释掉
Schritt 6: Aktualisieren Sie den Dienst und überprüfen Sie, ob die Passwortänderung erfolgreich war:
[root@mysql-2 mysql]# service mysqld restart #重新刷新服务
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!
[root@mysql-2 mysql]#
[root@mysql-2 mysql]# mysql -usc -p'Sanchuang1234#'
Eine andere Möglichkeit:
Verwenden Sie andere Administratorkonten, um Passwörter für andere Benutzer zurückzusetzen.
可以在SQLyog里操作
SET PASSWORD FOR 'root'@'localhost' = 'Sanchuang123#';