MySQL忘记root密码和修改root密码的解决方法

(1)简介

使用MySQL实验时,有时我们会忘记root用户的密码或者需要修改密码。本篇博客将介绍在不同版本的MySQL中,如何解决忘记root密码的问题并修改root用户密码。

PS:以下操作,均使用mysql服务器直接连接

(2)MySQL 5.5 忘记root密码

  1. 编辑MySQL配置文件 /etc/my.cnf,在 [mysqld] 部分添加以下内容:
skip-grant-tables
  1. 重启MySQL服务:
systemctl restart mysql
  1. 使用以下命令连接到MySQL:
mysql
  1. 进入 mysql 数据库:
use mysql;
  1. 更新 root 用户的密码:
update user set password=password("你的密码") where user="root";
  1. 刷新授权列表:
FLUSH PRIVILEGES;

(3)MySQL 5.6 忘记root密码

  1. 编辑MySQL配置文件 /etc/my.cnf,在 [mysqld] 部分添加以下内容:
skip-grant-tables
  1. 重启MySQL服务:
systemctl restart mysql
  1. 使用以下命令连接到MySQL:
mysql
  1. 执行以下命令更新root用户的密码:
update mysql.user set authentication_string=password('你的密码') where user='root' and host='localhost';
  1. 刷新授权列表:
FLUSH PRIVILEGES;

(4)MySQL 8.0 忘记root密码

如果你忘记了 MySQL 8.0 的 root 密码,可以按照以下步骤来修改密码:

  1. 停止 MySQL 服务。可以使用以下命令来停止 MySQL 服务:

    systemctl stop mysql
    
  2. 启动 MySQL 服务,但在启动过程中跳过权限验证:

    mysqld_safe --skip-grant-tables &
    
  3. 连接到 MySQL 服务器:

    mysql -u root
    

    这将以未验证的身份连接到 MySQL 服务器。

  4. 在 MySQL 命令行中执行以下命令来修改 root 用户的密码:

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
    

    请将 'newpassword' 替换为你想要设置的新密码。

  5. 刷新授权列表:

    FLUSH PRIVILEGES;
    
  6. 退出 MySQL 命令行:

    exit;
    
  7. 停止 MySQL 服务:

    systemctl stop mysql
    
  8. 启动 MySQL 服务:

    systemctl start mysql
    

(5)MySQL 5.6修改root密码

  1. 已知密码情况下,使用以下命令连接到MySQL:
mysql -uroot -p
  1. 执行以下命令修改root用户的密码:
set password for root@localhost=password('你的密码');
  1. 刷新授权列表:
FLUSH PRIVILEGES;

(6)MySQL 8.0 修改root密码

  1. 使用以下命令连接到MySQL:
mysql
  1. 执行以下命令修改root用户的密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

请将 'newpassword' 替换为你想要设置的新密码。

  1. 刷新授权列表:
FLUSH PRIVILEGES;

在MySQL 8.0及以上版本中,密码存储方式发生了变化,使用了更安全的加密算法。修改密码的方法是使用 ALTER USER 命令,而不是直接更新表中的记录。

本篇博客介绍了在不同版本的MySQL中解决忘记密码问题并修改root用户密码的方法。通过编辑配置文件、使用特定的SQL语句和刷新授权列表,我们可以成功恢复访问MySQL数据库的权限。

希望本文对你解决MySQL密码问题有所帮助。如果你有任何问题或需要进一步的帮助,请随时留言。

参考资料:

  • MySQL 官方文档: https://dev.mysql.com/doc/
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超凡脫俗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值