MYSQL8.0修改密码后依然无法登陆

本人新装了Windows版本的MySQL8.0,然后不知道默认密码,想重置密码导致修改密码后依旧无法登陆。提供踩坑的解决方案(Linux没试过,但是觉得也可以参考)。

1、打开Windows的DOS窗口,管理员模式运行。切换至MySQL的安装目录下的bin目录。

2、使用命令停止MySQL服务。

3、输入mysqld --console --skip-grant-tables --shared-memory 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证,注意skip前面是两个“-” ,此时DOS窗口无法输入,需要再新开一个DOS窗口。

4、再新建的DOS的窗口中同样切换至MySQL安装目录下的bin目录,并执行mysql命令。

5、切换至mysql库,并将密码清空,也就是mysql库里user表中的authentication_string字段。然后可以使用查询语句查看字段结果。

  • use mysql;
  • update user set authentication_string='' where user='root';
  • select host, user, authentication_string, plugin from mysql.user;

6、此时可以将第三步中启动的DOS窗口关闭了(窗口关闭,MySQL服务也会停止)。可以使用第四步新建的DOS窗口或者新建一个DOS窗口(同样是需要再MySQL安装目录下的bin目录),启动MySQL服务。

7、输入命令 mysql -u root -p 登陆MySQL。正常情况下是会提醒你输入登陆密码,因为在第五步的操作中将密码置空了,提示输入密码时,直接回车即可登陆。

8、修改密码为root,并重新查询表中字段信息。此时密码字段authentication_string不再是空,并且是密文显示。

  • alter user'root'@'localhost' IDENTIFIED BY 'root';(修改密码为root,第一个root是账户名,第二个root是密码。由于我是新装的MySQL,还没开启远程访问权限,所以此处@后面是localhost,有些是填入%,此处需要填入对应的权限值)
  • select host, user, authentication_string, plugin from mysql.user;

9、以上密码修改成功。可以使用DOS窗口,使用新修改的密码进行登陆验证。

附上解决中给予帮助的博文(无先后顺序),感谢。

Mysql 忘记root密码和修改root密码的解决方法(小结)mysql8.0.19忘记密码MYSQL8.0以上版本正确修改ROOT密码(可修改简单密码)

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值