1、本试例的环境如下:

Mysql用户root密码找回

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

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

Mysql用户root密码找回

 

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

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

Mysql用户root密码找回

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

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

  

Mysql用户root密码找回

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

mysql -S /mysql/3306/mysql.sock 

  

Mysql用户root密码找回

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

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

Mysql用户root密码找回

 

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

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

 Mysql用户root密码找回

 

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

 执行如下命令:

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

Mysql用户root密码找回

 

 

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

Mysql用户root密码找回

 

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

 5、然后重启mysql

相关文章:

  • 2021-05-30
  • 2021-10-21
  • 2021-09-25
  • 2021-11-17
  • 2022-02-01
  • 2022-12-23
  • 2021-08-13
  • 2021-11-10
猜你喜欢
  • 2021-07-15
  • 2022-01-05
  • 2021-03-27
  • 2021-08-12
  • 2022-01-30
  • 2022-12-23
  • 2022-02-10
相关资源
相似解决方案