Linux上的MYSQL忘记密码
2019-08-12 本文已影响0人
江河湖海琴瑟琵琶
有时候会忘记root密码.通过以下方法可以重新设置.
原理:登陆数据库的账号密码都保存在mysql数据库的user表里.只要更改root用户的密码字段就行了.
1.首先登陆到Linux服务器,找到mysql的配置文件,my.cnf
find / -name my.cnf #查找my.cnf
2.打开my.cnf,
vim /etc/my.cnf #打开配置文件
在[mysqld]下加入以下语句
(确保你的数据库是安全的,关闭登陆认证后,任何能都能访问你的数据库)

保存退出
3.重启mysqld服务
service mysqld restart
4.进入mysql命令行(此时不用密码就能登陆了)
use mysql;#选择mysql数据库
UPDATE user SET authentication_string = PASSWORD('新的密码') WHERE USER = 'root'; #更改root的密码
注:网上有的教程是更新password字段,但是我的表里密码是authentication_string字段
exit;#退出mysql命令行
5.开启mysql登陆认证
把第2步加入的skip-grant-tables 删掉.
重启mysqld服务.
完成.