mysql user表重置_MySQL重置密码

一、环境

OS:CentOS 7 (x86_64)

MySQL:8.0.20-1.el7 (mysql-community-server.x86_64)

二、密码重置

1.修改配置文件/etc/my.cnf,把下图这行的注释“#"去掉,或者直接添加上“skip-grant-tables”:

ce5dc47b29439fa778c148c9fc673621.png

2.启动mysql(如果之前已经启动了 mysql 的话,则应输入重启命令,而不是启动命令):

b9f339c6501272c34afec77e31997c82.png

3.更改密码

输入 “mysql”进入mysql控制台;

输入下面代码重置root用户密码(据说密码是存在 mysql 数据库中的 user 表的 authentication_string字段,但是直接使用sql语句更改 authentication_string 的值是不行的,况且密码肯定不可能是明文存放的,应该吧):

update mysql.user set authentication_string="" where user="root"

输入下面代码刷新mysql的系统权限相关表:

flush privileges;

输入下面代码设置你的密码(这是mysql官方文档中的设置密码的方式):

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码'

下面是操作截图(操作完退出mysql控制台应该会吧,输入 exit 按回车):

78d73ac4bf08816dafe743e96805529e.png

4.使用新密码登录:

将上面 步骤1 中在 my.cnf 添加的 "skip-grant-tables" 注释掉或者删除;

重启 mysql 服务;

登录mysql(注意输入的时候别打错成 mysqld ),输入刚才设置的密码;

e1a1b5daff3f463d4461648b0e486f29.png

三.总结

这类教程网上也很多,但是按网上的教程我没成功过,或许是人家确实是成功了,只是我们的版本不一样,使用的方法不太一样罢了(当然我也怀疑他们是没将配置文件改回去而误以为成功了),所以如果你按我的教程修改不成功的话,也可能是这类问题,但是我觉得版本相差不是很大的话应该不存在修改不成功的情况,ARM平台上我也尝试过了,没问题。当然,如果真的修改不成功的话,你就当没看见这篇博客,应该继续找其他的。同时,主要是留个记录,方便以后查看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值