找回mysql服务器root密码的_Mysql用户root密码找回

1、本试例的环境如下:

找回mysql服务器root密码的_Mysql用户root密码找回_第1张图片

2、mysql数据库的版本如下,此数据库运行多实例:

mysql Ver 15.1 Distrib 10.2.24-MariaDB, for Linux (x86_64) using readline 5.1

找回mysql服务器root密码的_Mysql用户root密码找回_第2张图片

3、mysql数据用户root的密码忘记了,需要找回。方法如下:

1)首先停止正在运行的mysql

找回mysql服务器root密码的_Mysql用户root密码找回_第3张图片

2)使用“--skip-grant-tables”启动mysql,忽略授权登录验证

mysqld_safe --defaults-file=/mysql/3306/my.cnf --skip-grant-tables --user=mysql 2>&1 >/dev/null &

找回mysql服务器root密码的_Mysql用户root密码找回_第4张图片

3)直接无密码无帐号登录mysql

mysql -S /mysql/3306/mysql.sock

找回mysql服务器root密码的_Mysql用户root密码找回_第5张图片

4)使用UPDATE直接修改密码,然后直接刷新下。

UPDATE mysql.user SET password=PASSWORD("oldboy123") WHERE user='root' and host='localhost';

flush privileges

7845d4c1dc2ad8668c566e7a80e34691.png

如果在mysql5.7的版本中,会出现如现错误

ERROR 1054 (42S22): Unknown column 'password' in 'field list'

ad03deb2863c9318490c7edfaafa4c2a.png

错误的原因是 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

执行如下命令:

UPDATE mysql.user SET authentication_string=PASSWORD("root")WHERE user='root' and host='localhost';

75862f4d85dd5afcb7dacad595c3c61f.png

4、验证root密码是否更改成功

找回mysql服务器root密码的_Mysql用户root密码找回_第6张图片

由上图所示,root密码更改成功。

5、然后重启mysql

你可能感兴趣的:(找回mysql服务器root密码的_Mysql用户root密码找回)