MySQL 5.7 忘记密码后修改密码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 5.7 忘记密码后修改密码相关的知识,希望对你有一定的参考价值。

1、修改登录设置

 vim /etc/my.cnf #或/etc/mysql/my.cnf 
 [mysqld] 
skip-grant-tables  #新加

2、重启mysql服务

3、直接mysql登录,并修改密码

update mysql.user set authentication_string=password('新密码') where User='root'; #5.7中保存密码字段是这个,desc先看下保存密码字段。其他版本一般如下修改
#mysql> UPDATE mysql.user SET Password = password ('new-password') WHERE User = 'root' ; 
#如遇到报错 You must reset your password using ALTER USER statement before executing this statement. 原因是密码有效期已到,需要执行
 1.  ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; #设置密码永不过期,改回默认方法 alter user 'root'@'localhost' password expire default
 2.  或者 set global default_password_lifetime=0 或直接写在配置文件里面,过期时间为0表示永不过期,全局生效。推荐上中方法仅特定用户密码不过期
flush privileges; #使用update修改密码必须要执行此步

或者
set password=passwprd('新密码');#不须刷新授权表,完整格式 SET PASSWORD FOR 'root'@'localhost'=PASSWORD('newpassword');

4、修改配置文件

删除

skip-grant-tables

重启服务

以上是关于MySQL 5.7 忘记密码后修改密码的主要内容,如果未能解决你的问题,请参考以下文章

mySql-5.7,root用户忘记密码处理方式

Mysql 5.7 liunx 忘记密码的补救方法

mysql 5.7 忘记root密码解决方法

MySQL 5.7 数据库的忘记 root 登录密码处理

MySQL 5.7 数据库的忘记 root 登录密码处理

Win10下MySQL(5.7和8两个版本)忘记root密码的解决办法