MySQL忘记密码解决

2022-10-17,,

1.设置管理员root密码为123

开启mysql服务后

ps c:\windows\system32> mysqladmin -uroot -p password "123"
enter password:
mysqladmin: [warning] using a password on the command line interface can be insecure.
warning: since password will be sent to server in plain text, use ssl connection to ensure password safety.
#直接回车,忽略上述提示

再次登录不输入密码,出现一下结果。

ps c:\windows\system32> mysql -uroot -p
enter password:
error 1045 (28000): access denied for user 'root'@'localhost' (using password: no)
2.更改密码
ps c:\windows\system32>mysqladmin -uroot -p"123" password "456"  #修改mysql密码,因为已经有密码了,所以必须输入原密码才能设置新密码
3.忘记密码
3.1关闭mysql服务器
ps c:\windows\system32> net stop mysql
mysql 服务正在停止.
mysql 服务已成功停止。
3.2跳过授权表
ps c:\windows\system32> mysqld --skip-grant-tables
3.3再次登录时无需输入密码
ps c:\windows\system32> mysql -uroot -p
enter password:
welcome to the mysql monitor.  commands end with ; or \g.
your mysql connection id is 2
server version: 5.7.27 mysql community server (gpl)

copyright (c) 2000, 2019, oracle and/or its affiliates. all rights reserved.

oracle is a registered trademark of oracle corporation and/or its
affiliates. other names may be trademarks of their respective
owners.

type 'help;' or '\h' for help. type '\c' to clear the current input statement.
3.4更改密码为'abc'
mysql> update mysql.user set authentication_string =password('abc') where user='root';
query ok, 1 row affected (0.01 sec)
rows matched: 1  changed: 1  warnings: 0
3.5刷新权限后退出
mysql> flush privileges;
query ok, 0 rows affected (0.00 sec)

mysql> exit
bye
3.6关闭mysql进程
ps c:\windows\system32> tasklist |findstr mysql
mysqld.exe                   11452 services                   0    173,284 k
ps c:\windows\system32> taskkill /f /pid 11452
成功: 已终止 pid 为 11452 的进程。
3.7再次开启服务,使用新密码登录
ps c:\windows\system32> net start mysql
mysql 服务正在启动 .
mysql 服务已经启动成功。

ps c:\windows\system32>  mysql -uroot -p
enter password: ***
welcome to the mysql monitor.  commands end with ; or \g.
your mysql connection id is 2
server version: 5.7.27 mysql community server (gpl)

copyright (c) 2000, 2019, oracle and/or its affiliates. all rights reserved.

oracle is a registered trademark of oracle corporation and/or its
affiliates. other names may be trademarks of their respective
owners.

type 'help;' or '\h' for help. type '\c' to clear the current input statement.

mysql>

《MySQL忘记密码解决.doc》

下载本文的Word格式文档,以方便收藏与打印。