mysql 5.7 修改账号密码
封面图
•
2025-10-16
•
MySQL
373
0
0
0
在 MySQL 5.7 中修改用户密码,可以通过以下几种方式实现: --- ## ✅ 方法一:使用 `SET PASSWORD` 命令(推荐) ### 语法: ```sql SET PASSWORD FOR 'username'@'host' = PASSWORD('new_password'); ``` ### 示例: ```sql SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your_new_password'); ``` > 注意: - `PASSWORD()` 函数是 MySQL 5.7 中的内置函数,用于加密密码。 - 如果你使用的是 `mysql_native_password` 插件,这个方法适用。 --- ## ✅ 方法二:使用 `UPDATE` 命令(不推荐,但可行) ### 说明: 直接更新 `mysql.user` 表中的 `Password` 字段。 > ⚠️ 注意:从 MySQL 5.7 开始,`Password` 字段已被弃用,改为 `authentication_string`。因此,如果你使用的是较新的版本,应该使用 `authentication_string`。 ### 1. 使用 `authentication_string`(推荐): ```sql UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHERE User = 'username' AND Host = 'host'; FLUSH PRIVILEGES; ``` ### 示例: ```sql UPDATE mysql.user SET authentication_string = PASSWORD('mynewpassword') WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES; ``` > 🔍 **注意**:MySQL 5.7 可能会自动将密码加密,所以也可以使用 `ALTER USER` 命令。 --- ## ✅ 方法三:使用 `ALTER USER` 命令(推荐,适用于 MySQL 5.7+) ### 语法: ```sql ALTER USER 'username'@'host' IDENTIFIED BY 'new_password'; ``` ### 示例: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'mynewpassword'; ``` > ✅ 这是 MySQL 5.7 推荐的方式,更安全、更直观。 --- ## 🧾 查看当前用户密码策略 你可以查看用户的密码策略: ```sql SELECT User, Host, plugin FROM mysql.user; ``` 如果看到 `plugin` 是 `mysql_native_password`,那么使用 `PASSWORD()` 或 `ALTER USER` 都可以。 --- ## 📌 总结 | 方法 | 适用版本 | 推荐度 | |------|----------|--------| | `SET PASSWORD` | MySQL 5.7 | ⭐⭐⭐ | | `ALTER USER` | MySQL 5.7+ | ⭐⭐⭐⭐ | | `UPDATE mysql.user` | MySQL 5.7 | ⭐ | --- ## 💡 提示 - 修改密码后,务必执行 `FLUSH PRIVILEGES;`,确保权限立即生效。 - 如果你是通过远程连接数据库,请确保 `Host` 字段正确(例如 `'%'` 表示任意主机)。 --- 如果你告诉我具体的用户名和主机名,我可以帮你写出完整的 SQL 命令。
上一篇:
mysql group by和order by 同时使用
下一篇:
精通 MySQL 需要掌握那些知识?
标题录入,一次不能超过6条
留言
评论