ZBLOG

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

这个错误表明您设置的密码不符合 MySQL 的密码策略要求。MySQL 8.0 默认启用了密码验证插件,要求密码满足一定强度。

解决方案

方法1:设置符合要求的强密码

尝试使用更复杂的密码(至少8位,包含大小写字母、数字和特殊字符):

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root@1234';

方法2:临时降低密码策略要求(开发环境适用)

  1. 先查看当前密码策略:
SHOW VARIABLES LIKE 'validate_password%';
  1. 降低策略级别(不推荐生产环境使用):
SET GLOBAL validate_password.policy = LOW;
-- 或者完全禁用(仅限开发环境)
SET GLOBAL validate_password.policy = 0;
  1. 然后再次尝试修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';

方法3:使用mysql_secure_installation工具

在WSL终端中运行:

sudo mysql_secure_installation

按照交互提示设置root密码和其他安全选项。

完整步骤示例

  1. 登录MySQL(无需密码):
sudo mysql -u root
  1. MySQL命令行中执行:
-- 查看当前策略
SHOW VARIABLES LIKE 'validate_password%';

-- 临时降低策略(可选)
SET GLOBAL validate_password.policy = LOW;

-- 修改root认证方式和密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码';

-- 刷新权限
FLUSH PRIVILEGES;

--退出
EXIT;
  1. Navicat中使用新设置的密码连接即可

注意:在生产环境中请始终使用强密码,上述降低安全策略的方法仅适用于本地开发测试环境。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=23894

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?