导读有不少小白在使用Windows进行搭建主机的时候,安装了一些环境后,其中有MySQL设置后,然后不少马大哈忘记了MySQL的密码,导致在一些程序安装及配置的时候无法进行。这个时候怎么办呢?重置密码呗?
aa0e4f69478247cb9fa171e0976e03d8

有不少小白在使用Windows进行搭建主机的时候,安装了一些环境后,其中有MySQL设置后,然后不少马大哈忘记了MySQL的密码,导致在一些程序安装及配置的时候无法进行。这个时候怎么办呢?重置密码呗?那么如何重置呢?这里搬主题就分享一下Windows环境下MySQL密码重置图文教程。

!!!数据无价,谨慎操作,操作之前做好服务器快照,方便操作失败回滚!!!
!!!数据无价,谨慎操作,操作之前做好服务器快照,方便操作失败回滚!!!
!!!数据无价,谨慎操作,操作之前做好服务器快照,方便操作失败回滚!!!

重要的事情说三遍,重要的事情提前说。

本篇以root用户为例,仅测试环境下操作,学习不要在生产环境下折腾。

常用情况:面板无法重设密码并且忘记root密码时、面板无法登录并且需要用到MySQL备份数据时(命令行备份数据下期出)、其他情况。

面板安装的MySQL路径在 D:BtSoftmysqlMySQL8.0bin 下,这里的路径可以根据自己设置的盘符和MySQL版本更换为自己的。

前往这个路径后,在目录空白的地方,按住键盘左下角的SHIFT键的同时,按一下鼠标右键,唤醒右键菜单,找到“在此处打开powershell窗口”(低版本的Windows Server是cmd);

9c87d68c1cec407692521e775044682a

进入后输入cmd,即可继续我们的教程学习(如果你会powershell的话,使用powershell即可)。

15dd6f8728314bd7bf0c64c3e5d3751d

1.打开命令窗口cmd后,输入命令,停止MySQL服务

net stop mysql

2.开启跳过密码验证登录的MySQL服务

mysqld --console --skip-grant-tables --shared-memory

3.在同一个MySQL路径下,打开一个新的cmd窗口,无密码登录MySQL,输入命令免密登录数据库,密码置为空,命令如下:

mysql -u root -p

4.使用mysql数据库:

use mysql;

5.查询用户(可省略):

select user from user;

6.更新指定用户的密码(示例root),注意提示,版本不同使用的命令不同,报错的话上网搜找解决方法:

#mysql 5.5和5.6
update user set password=password("bt123456") where user="root";
flush privileges;
#mysql 5.7
update user set authentication_string=password("bt123456") where user="root";
flush privileges;
#mysql 8.0
update mysql.sys set autnentication_string=null where user="root";
flush privileges;
alter user "root"@"localhost" identified with caching_sha2_password by "bt123456";
flush privileges;

7.退出:

quit或exit

8.在跳过密码验证登录的cmd窗口停止掉正在执行的命令:

按ctrl+c即可

9.启动mysql:

net start mysql

10.使用新密码登录:

mysql -u root -p