【紧急救援】MySQL root密码忘了?一招教你轻松重置!

诗林  金牌会员 | 2024-11-9 21:42:52 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 451|帖子 451|积分 1353

忘记 MySQL 数据库的 root 密码是一个常见问题,可以通过以下步骤重置 root 密码。以下是详细的解决方案:
方法一:跳过授权表方式(适用于 MySQL 5.7 及更早版本)


  • 制止 MySQL 服务 首先,必要制止 MySQL 服务。在 Linux 系统上,可以使用以下下令:
    1. sudo systemctl stop mysqld
    复制代码
    或者
    1. sudo service mysqld stop
    复制代码
  • 以安全模式启动 MySQL 使用 --skip-grant-tables 选项启动 MySQL,这将跳过全部权限查抄。
    1. sudo mysqld_safe --skip-grant-tables &
    复制代码
  • 登录 MySQL 由于跳过了权限表,可以直接登录 MySQL,不必要密码。
    1. mysql -u root
    复制代码
  • 修改 root 密码 在 MySQL 下令行中执行以下 SQL 语句来修改 root 密码:
    1. FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
    2. 请将 'new_password' 替换为你希望设置的新密码。
    复制代码
  • 退出 MySQL
    1. exit;
    复制代码
  • 重启 MySQL 服务 制止并重新启动 MySQL 服务,使更改生效。
    1. sudo systemctl restart mysqld
    复制代码
    或者
    1. sudo service mysqld restart
    复制代码
方法二:使用 init-file 参数(适用于 MySQL 8.0)


  • 创建一个包含密码重置下令的文件 创建一个文本文件(例如 reset_password.sql),并在文件中添加以下内容:
    1. [client] port = 3306 user = root ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
    2. 请将 'new_password' 替换为你希望设置的新密码。
    复制代码
  • 制止 MySQL 服务
    1. sudo systemctl stop mysqld
    复制代码
  • 以安全模式启动 MySQL 使用 --init-file 选项启动 MySQL,指定之前创建的 SQL 文件。
    1. sudo mysqld --defaults-file=/etc/my.cnf --init-file=/path/to/reset_password.sql &
    2. 请将 /path/to/reset_password.sql 替换为实际的文件路径。
    复制代码
  • 等候 MySQL 启动完成 确保 MySQL 乐成启动并应用了文件中的下令。
  • 重启 MySQL 服务 制止并重新启动 MySQL 服务,使更改生效。
    1. sudo systemctl restart mysqld
    复制代码
注意事项



  • 备份数据:在举行任何操纵之前,务必备份数据库以防数据丢失。
  • 权限问题:确保你有足够的权限举行这些操纵,通常必要超级用户权限。
  • 安全性:在生产情况中操纵时,请谨慎处置惩罚,制止袒露敏感信息。
通过上述方法,你可以重置忘记的 MySQL root 密码。选择适合你的 MySQL 版本的方法举行操纵。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

诗林

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表