如何在 Ubuntu 系统中重置 MySQL root 密码:分步指南
由 Mux 赞助的 DEV 全球展示挑战赛:展示你的项目!
简介:
丢失或忘记 MySQL root 密码可能会让人非常头疼,但别担心,在 Ubuntu 系统中,您有办法重新获得对 MySQL 数据库的访问权限。本文将一步步指导您如何在 Ubuntu 系统上重置 MySQL root 密码。我们将使用一种方法,该方法包括停止 MySQL 服务、创建一个临时配置文件以及为 root 用户设置新密码。
步骤 1:停止 MySQL 服务
第一步是停止 MySQL 服务,以确保我们可以安全地进行密码重置过程。打开终端并运行以下命令:
sudo service mysql stop
步骤 2:创建临时配置文件
接下来,我们将创建一个临时配置文件,以便在不进行密码验证的情况下启动 MySQL 服务。这将允许我们重置 root 密码。运行以下命令创建该文件:
sudo nano /etc/mysql/mysql.conf.d/reset-mysql-password.cnf
步骤 3:向文件中添加配置
在 nano 编辑器中,将以下行添加到 reset-mysql-password.cnf 文件中。
[mysqld]
skip-grant-tables
要保存更改并退出编辑器,请按 CTRL + X,然后输入 Y,最后按 Enter。
步骤 4:在安全模式下启动 MySQL 服务
临时配置文件就位后,在安全模式下启动 MySQL 服务:
sudo mysqld_safe --skip-grant-tables &
步骤 5:无需密码连接 MySQL
现在,我们可以无需输入密码即可连接到 MySQL 服务器。打开一个新的终端窗口并运行以下命令:
mysql -u root
步骤 6:为 root 用户设置新密码
连接到 MySQL 提示符后,就可以为 root 用户设置新密码了。执行以下 SQL 命令:
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOUR_NEW_PASSWORD';
将“YOUR_NEW_PASSWORD”替换为您想要设置的密码。执行 FLUSH PRIVILEGES; 命令可确保更改立即生效。
如果您在使用弱密码时遇到以下错误
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
如果您想使用弱密码(不推荐),可以按如下方式修复此问题。
SHOW VARIABLES LIKE 'validate_password%';
SET GLOBAL validate_password.policy=LOW;
现在再次运行密码更新 SQL 语句:
步骤 7:退出 MySQL 并删除配置文件
设置新密码后,退出 MySQL 提示符:
exit;
删除临时配置文件:
sudo rm /etc/mysql/mysql.conf.d/reset-mysql-password.cnf
步骤 8:重启 MySQL 服务
最后,重启 MySQL 服务以应用更改:
sudo service mysql restart
恭喜!您已成功重置Ubuntu系统上的MySQL root密码。现在您可以使用新密码访问MySQL数据库。请务必妥善保管您的MySQL root密码。
文章来源:https://dev.to/asifzcpe/resetting-mysql-root-password-in-ubuntu-a-step-by-step-guide-3gnd