MYSQL8.0以上版本ROOT密码报错及修改

在登录数据库过程中,如果遇到忘记root密码时,该如何解决?

 1.使用管理员权限打开命令提示符,在命令行中输入: net stop mysql 

2.待mysql服务停止后,输入: mysqld --shared-memory --skip-grant-tables ,此时命令提示符窗口处于锁定状态,我们重新以管理员权限打开新的命令提示符窗口。

 

3.在新的命令提示符窗口输入: mysql -uroot -p 后回车,提示输入密码时直接按回车进入。

4.输入: use mysql; 

5.输入: update user set authentication_string='' where user='root'; ,将authentication_string置空。

注:在mysql8.0以上版本,

 update mysql.user set password='newpassword' where user='root';

 

 update mysql.user set password=PASSWORD('newpassword') where User='root'; 这两条命令已经不起作用了。

6.输入: alter user 'root'@'localhost' identified by 'newpassword'; newpassword是要设的新密码。

 

7.如果提示设置成功,则输入: flush privileges; 。完成后Ctrl+Z退出mysql,使用新密码重新登录即可。

注:此步骤切不可省略!!!

 

8.如果提示不成功,则关闭两个命令提示符,重新打开一个管理员权限的命令提示符窗口,输入: mysql -uroot -p 后回车,输入密码时直接按回车进入(因为此时密码已被置空)。

9.重复步骤4,步骤6,步骤7。

10.如果使用Navicat等可视化界面连接数据库时连接不成功的情况,如错误信息:2059。此时需要更改验证方式,使用命令提示符登录数据库,输入: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourpassword'; yourpassword是你想要设置的密码。

11.提示成功后,重复步骤7,再次打开Navicat连接即可。

 

以上为mysql 8.0版本以上,忘记root密码或使用root密码登录不成功的解决办法!

免费资源大放送关注微信公众号领取

posted @   值南针  阅读(3520)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示