温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MySQL 5.7 忘记密码后修改密码

发布时间:2020-07-22 15:20:33 阅读:2346 作者:大飞侠大虾 栏目:MySQL数据库
亿速云mysql数据库,读写分离,安全稳定,弹性扩容,低至0.3元/天!! 点击查看>>

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 user() identified by "123456" ;修改密码后一般就解决问题,不行的话看下面的步骤
 2.  ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER; #设置密码永不过期,改回默认方法 alter user 'root'@'localhost' password expire default
 3.  或者 set global default_password_lifetime=0 或直接写在配置文件里面,过期时间为0表示永不过期,全局生效。推荐上中方法仅特定用户密码不过期
flush privileges; #使用update修改密码必须要执行此步

或者#经测试加skip-grant-tables不能执行以下操作
set password=passwprd('新密码');#不须刷新授权表,完整格式 SET PASSWORD FOR 'root'@'localhost'=PASSWORD('newpassword');

4、修改配置文件

删除

skip-grant-tables

重启服务

方法二:

  1. 停止mysql服务

  2. 使用--skip-grant-tables启动数据库,忽略授权登录验证

mysqld_safe --skip-grant-tables --user=mysql &
mysql  #登录后修改密码,多实例要加-S "SOCKET"

3.关闭数据库,重新启动

mysqladmin -uroot -p'newpassword' shutdown  #关闭,或用kill,pkill杀掉

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×