此文章借鉴了很多博主的文章,结合自己遇到的问题,做出整理:

参考:https://www.cnblogs.com/wangkun122/articles/11280481.html

           https://blog.csdn.net/lei95/article/details/104736176

1.停止mysql服务:以管理员运行cmd,执行命令:net stop mysql

【mysql 8.0 解决忘记密码问题】

2.启动服务时跳过权限认证:执行命令:mysqld --console --skip-grant-tables --shared-memory

【mysql 8.0 解决忘记密码问题】

执行命令时可能会遇到提示:“mysql不是内部或外部命令,也不是可运行程序”,这是由于没有添加环境变量

右击“我的电脑”--“属性”--“高级系统设置”--“环境变量”:如下图设置

设置完成后,重新执行命令即可:mysqld --console --skip-grant-tables --shared-memory

【mysql 8.0 解决忘记密码问题】

3.登录mysql:重新打开一个命令行窗口(步骤2中的命令行窗口不要关闭),进入bin目录中,

执行命令:mysql(或者mysql -u root -p)

无需输入密码,直接回车进入

【mysql 8.0 解决忘记密码问题】

4.清空root密码:执行命令如下:

切换至mysql库:use mysql;

清空密码:         update user set authentication_string='' where user='root';

查看是否清空:  select host, user, authentication_string, plugin from mysql.user;

【mysql 8.0 解决忘记密码问题】

确认root用户无密码后,执行以下命令:

刷新:                flush privileges;

退出:                exit

【mysql 8.0 解决忘记密码问题】

5.启动mysql服务:首先关闭步骤2中的命令行窗口,在步骤4的命令行窗口中执行以下命令:

启动服务:      net start mysql

【mysql 8.0 解决忘记密码问题】

6.登录mysql:执行mysql -u root -p,回车即可

【mysql 8.0 解决忘记密码问题】

7.修改密码:将root用户的密码修改为12345

 执行命令:  alter user'root'@'localhost' IDENTIFIED BY '12345';

查看:          select host, user, authentication_string, plugin from mysql.user;

修改完成之后,root用户密码显示为明文

【mysql 8.0 解决忘记密码问题】

8.退出后,用新密码重新登录即可

退出:       exit

登录:       mysql -u root -p  回车键入密码12345

相关文章: