如何修改MySQL用户密码

在本教程中,我们将向您展示如何更改MySQL用户密码。这些说明应适用于任何现代Linux发行版,例如Ubuntu 18.04和CentOS7。

2 min read
By myfreax
如何修改MySQL用户密码

在本教程中,我们将向您展示如何更改MySQL用户密码。这些说明应适用于任何现代Linux发行版,例如Ubuntu 20.04和CentOS 8。

根据系统上运行的MySQL或MariaDB服务器版本,您将需要使用不同的命令来更改用户密码。

您可以通过运行mysql --version命令来找到数据库服务器版本,如果您的系统中安装MySQL,则输出将类似于以下内容。

mysql  Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using  EditLine wrapper

如果是MariaDB的输出将是mysql  Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2。

请务必记下您正在运行的MySQL或MariaDB版本。如果要获取所有MySQL用户帐户的列表,请查看教程列出所有MySQL用户

要修改mysql用户的密码,请先运行mysql -u root -p命令来访问MySQL Shell,并在出现提示时输入您的MySQL root用户密码。

如果您尚未为MySQL超级用户设置密码,则可以使用sudo mysql登录。如果您安装的是MySQL 5.7.6和更高版本或MariaDB 10.1.20和更高版本。

如果安装的MySQL 5.7.5和更低版本或MariaDB 10.1.20和更低版本,请使用SET语句修改密码。

ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'NEW_USER_PASSWORD';
FLUSH PRIVILEGES;

##mysql 5.7或者MariaDB 10.1.20以下
SET PASSWORD FOR 'user-name'@'localhost' = PASSWORD('NEW_USER_PASSWORD');
FLUSH PRIVILEGES;

如果ALTER USER语句不适合您,则可以直接修改用户表:

UPDATE mysql.user SET authentication_string = PASSWORD('NEW_USER_PASSWORD')
WHERE User = 'user-name' AND Host = 'localhost';
FLUSH PRIVILEGES;

要验证是否正确应用了新密码,请运行命令mysql -u user-name -h localhost -p。系统将提示您输入新的用户密码。您将登录到MySQL服务器。

结论

在本教程中,您学习了如何更改MySQL或MariaDB用户密码。确保新密码牢固且安全,并将其保存在安全的地方。

要详细了解如何使用MySQL Shell执行各种管理操作,请查看我们的指南,了解如何管理 MySQL用户帐户和数据库

如有任何疑问,请随时发表评论。

Related Articles