忘记了 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 服务器是远程服务器,请确保你有足够的权限进行这些操作。
  • 如果你在生产环境中操作,请务必小心,并确保在操作前备份重要数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值