Mysql版本在8.0以上忘记密码解决办法

在修改MySQL数据库的root密码时很多老帖子的方式不成功

mysql> set password for 用户名@localhost = password('新密码');
例如(将用户root的密码更改为root):
mysql> set password for root@localhost = password('root');

以及

mysqladmin -u用户名 -p旧密码; password 新密码
例如:
mysqladmin -uroot -proot password 123

以及用UPDATE直接编辑user表方法也是不管用的。

这是由于版本在8.0以上已经不再支持。

解决方法:

1、首先终止MySQL服务

1、右键此电脑-管理-服务-MySQL
或者
2、以管理员身份打开cmd,执行:

net stop mysql

2、以管理员身份新开cmd,进入mysql安装的bin目录后执行:

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

此时,命令行框会处于持续运行状态:

3、保持上述的窗口(切记),再以管理员身份新开cmd,执行:

mysql -uroot -p

这时就已经绕过密码登录进入mysql了。

4、接下来修改root的密码为空

UPDATE mysql.user SET authentication_string='' WHERE user='root';

5、此时关闭所有命令行界面,正常开启MySQL服务后进行登录,无需密码即可进入成功。

此时进行修改密码操作:

use mysql 
ALTER user root@'localhost' identified by '123456';

密码修改成功,退出mysql,即可通过密码:123456登录.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值