在这篇文章中,我们将向您展示如何重置MySQL root密码以备忘记。 以下步骤适用于任何现代Linux发行版。
首先停止MySQL或MariaDB服务
sudo systemctl stop mysql
无需密码即可启动MySQL服务器
mysqld_safe --skip-grant-tables &
登录到MySQL shell
mysql -u root
设置一个新的MySQL root密码
根据您在系统上运行的MySQL或MariaDB服务器版本,您需要使用不同的命令来恢复root密码。
您可以通过发出以下命令找到您的服务器版本:
mysql --version
mysql Ver 8.0.11 for Linux on x86_64( MySQL Community Server - GPL )
从上面的输出中可以看到,我运行的是MySQL 8.0.11版本。
如果您有MySQL 5.7.6及更高版本或MariaDB 10.1.20及更高版本,请运行以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MY_NEW_PASSWORD'; FLUSH PRIVILEGES;
如果您有MySQL 5.7.5及更早版本或MariaDB 10.1.20及更早版本,请运行以下命令:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MY_NEW_PASSWORD'); FLUSH PRIVILEGES;
如果ALTER USER语句不适用于您,请尝试直接修改用户表:
UPDATE mysql.user SET authentication_string = PASSWORD('MY_NEW_PASSWORD') WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
在这两种情况下,如果一切顺利,您应该看到以下输出:
Query OK, 0 rows affected (0.00 sec)
使用以下命令停止服务器
sudo mysqladmin shutdown
最后启动MySQL或MariaDB服务
sudo systemctl start mysql
总结
您已经了解如何重置您的MySQL或MariaDB root密码。 您现在可以查看这些说明并学习如何管理MySQL用户帐户和数据库。
就这样! 如果您有任何问题或反馈,请随时发表评论。