张国伟 发表于 2024-11-9 04:12:00

忘记了 MySQL 8.0 的 root 密码,应该怎么办?

如果你忘记了 MySQL 8.0 的 root 密码,可以通过以下步骤来重置密码。请注意,这些步骤需要你有对 MySQL 服务器的物理或命令行访问权限。
步骤 1: 停止 MySQL 服务

起首,你需要停止正在运行的 MySQL 服务。你可以利用以下命令来停止 MySQL 服务:
sudo systemctl stop mysqld
步步 2: 启动 MySQL 服务跳过权限表

接下来,你需要启动 MySQL 服务并跳过权限表查抄。这可以通过添加 --skip-grant-tables 选项来实现。你可以利用以下命令来启动 MySQL 服务:
sudo mysqld_safe --skip-grant-tables &
大概在某些系统上大概是:
sudo mysqld --skip-grant-tables --user=mysql &
步骤 3: 毗连到 MySQL 服务器

现在,你可以利用 mysql 客户端毗连到 MySQL 服务器,而不需要密码。打开一个新的终端窗口并运行以下命令:
mysql -u root
步骤 4: 重置密码

毗连到 MySQL 服务器后,你需要选择 mysql 数据库并更新 root 用户的密码。请注意,MySQL 8.0 利用 caching_sha2_password 作为默认的身份验证插件,因此你需要利用 ALTER USER 语句来设置新密码。
FLUSH PRIVILEGES;
USE mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
步骤 5: 重启 MySQL 服务

完成密码重置后,你需要正常重启 MySQL 服务以重新启用权限表查抄。停止当前的 MySQL 服务并正常启动它:
sudo killall mysqld
sudo systemctl start mysql
步骤 6: 验证新密码

最后,验证新密码是否生效。尝试利用新的密码登录 MySQL 服务器:
mysql -u root
-p 输入你在步骤 4 中设置的新密码,如果统统正常,你应该能够成功登录。
注意事项



[*]在执行这些步骤时,请确保你有足够的权限来停止和启动 MySQL 服务。
[*]如果你的 MySQL 服务器是远程服务器,请确保你有足够的权限举行这些操纵。
[*]如果你在生产环境中操纵,请务必警惕,并确保在操纵前备份重要数据。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 忘记了 MySQL 8.0 的 root 密码,应该怎么办?