MySQL 更改用户密码命令教程
您需要在 Linux 或类 Unix 操作系统上使用 mysql(或基于 MS-Windows 的系统上的 mysql.exe)命令。打开终端应用程序或 ssh 会话。在 shell 提示符下键入以下命令以 root 用户身份登录。类 Unix 操作系统的语法如下。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 不 |
要求 | Linux 或 Unix 终端 |
类别 | 数据库服务器 |
操作系统兼容性 | BSD • Linux • macOS • Unix • Windows • WSL |
预计阅读时间 | 3 分钟 |
如何在mysql上修改用户密码
Mysql修改用户密码使用如下方法:
- 打开 bash shell 并以 root 用户身份连接到服务器:
mysql -u root -h localhost -p - 运行 ALTER mysql 命令:
ALTER USER 'userName'@'localhost' IDENTIFIED BY 'New-Password-Here'; - 最后输入 SQL 命令来重新加载 mysql 数据库中的授权表:
FLUSH PRIVILEGES;
请注意,在 MS-Windows 主机上使用 mysql.exe 的方法如下(首先更改 mysql.exe 所在的目录 [例如:“ C:\Program Files\mysql\mysql-5.0.77-win32\bin“]。让我们详细了解示例和语法。
mysql 命令更改用户密码
从 shell 以 root 身份登录:
$ mysql -u root -p
或者以管理员身份登录,该用户可执行 DBA 职责。例如:
$ mysql -u admin -h 10.83.200.253 -p
其中,
- -u root或-u admin:MySQL 服务器管理员用户名(大多数系统上默认为 root)。
- -h 10.83.200.253:MySQL 服务器 IP 地址或主机名,例如 server1.example.com。
- -p:提示输入密码。
切换到 mysql 数据库(在 mysql> 提示符下输入命令,不要包含字符串“mysql>”):对于mysql 数据库服务器版本 5.7.5或更早版本,
语法如下:
sign and is not part of the command for the mysql user." class="normaluserprompt">mysql> use mysql;
SET PASSWORD FOR 'user-name-here'@'hostname' = PASSWORD('new-password');
对于mysql 数据库服务器版本 5.7.6 或更新版本,使用以下语法:
ALTER USER 'user'@'hostname' IDENTIFIED BY 'newPass';
您还可以使用以下 SQL 语法:
UPDATE mysql.user SET Password=PASSWORD('new-password-here') WHERE USER='user-name-here' AND Host='host-name-here';
在此示例中,更改名为 tom 的用户的密码:
SET PASSWORD FOR 'tom'@'localhost' = PASSWORD('foobar');
或者
UPDATE mysql.user SET Password=PASSWORD('foobar') WHERE USER='tom' AND Host='localhost';
示例输出:
Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0
根据需要随意替换“tom”(用户)、“localhost”(主机名)和“foobar”(密码)的值。最后,输入以下命令重新加载权限:
FLUSH PRIVILEGES;
示例输出:
Query OK, 0 rows affected (0.00 sec)
要退出 mysql> 提示符,请输入:
quit;
使用 mysqladmin 命令更改 MySQL 根用户或用户密码
我们还可以使用 mysqladmin CLI 来更改 MySQL 密码。mysqladmin 命令的语法如下:
其中,
$ mysqladmin --user={USER_NAME} password "{NEW_PASSWORD_HERE}"
$ mysqladmin --user=root password "5b350f65542fdb74e74ef7b815f86ad5"
$ mysqladmin --user=root --host=192.168.2.200 --password password "5b350f65542fdb74e74ef7b815f86ad5"
- --user=root:如果不是当前用户,则为登录用户。
- --password:提示输入连接服务器时使用的密码。
- --host=192.168.2.200:通过给定的IP地址或主机名连接到MySQL服务器主机。
- password "5b350f65542fdb74e74ef7b815f86ad5":将旧密码更改为当前格式的“5b350f65542fdb74e74ef7b815f86ad5”。
验证新密码设置
用户或者您可以使用以下 shell 语法测试新密码:
$ mysql -u tom -p
升级后输入您之前为 tom 用户设置的新密码。
示例会话
总结
您学习了如何在 Linux、Unix、macOS、*BSD 和 Windows 操作系统上使用 mysql 命令行更改 MySQL 或 MariaDB 用户密码。有关更多信息,请通过键入 man 命令或在类 Unix 系统下传递 --help 选项来阅读 mysql 手册页。例如:
$ man mysql
$ mysql --help