MySql恢复密码的过程

Posted linkanyway

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySql恢复密码的过程相关的知识,希望对你有一定的参考价值。

密码是一个非常重要的东西,所以往往设置的很复杂,也往往一不小心.......就忘了  : (

很多童鞋在Linux下看到一堆命令行往往都是一脸懵逼,不知从何下手,这里记录了下基本的恢复操作以备不时之需!

 

  1. 第一步  先停止mysql服务
    systemctl stop mysqld
    

      

  2. 设置Mysql的环境选项
    systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
    

      

  3. 然后重启动MySql服务 (此时加载的option就是第二步你指定的方式了,即跳过grant检测)
    systemctl start mysqld
    

      

  4. 以root登录MySql
    mysql -u root
    

      

  5. 接下来。。。毫无疑问,我们要开始重置密码了!
    mysql> UPDATE mysql.user SET authentication_string = PASSWORD(‘MyNewPassword‘)
        -> WHERE User = ‘root‘ AND Host = ‘localhost‘;
    mysql> FLUSH PRIVILEGES;
    mysql> quit
    

      

  6. 设置完毕后,要停止服务
    systemctl stop mysqld
    

      

  7. 还原环境设置
    systemctl unset-environment MYSQLD_OPTS
    

      

  8. 胜利在望!重启动服务
    systemctl start mysqld
    

      

  9. 登录服务器
    mysql -u root -p
    

      

  10. 设置密码,免得再一次悲剧
    GRANT ALL PRIVILEGES ON *.* TO ‘root’@‘%‘ IDENTIFIED BY ‘password‘ WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    

      











以上是关于MySql恢复密码的过程的主要内容,如果未能解决你的问题,请参考以下文章

阿里云RDS-Mysql物理备份数据库文件,在本地windows下数据库恢复过程

mysql数据库备份与恢复

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段

MySQL备份与恢复

使用–skiptables重置MySQL8 root用户的密码

MySQL · 引擎特性 · InnoDB 崩溃恢复过程