1、问题概述?
环境说明:
Red Hat Enterprise Linux7+mysql5.7.10
执行如下语句报错:
set password for 'root'@'localhost' = password('123456');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
意思就是:您的密码不符合当前策略要求,说白了就是你的密码简单了。
原因:mysql有默认的密码策略,设置的密码必须符合规范。
2、解决办法?
2.1、解决办法1:设置符合策略要求的密码
直接提供符合策略的密码如:123456QWEasd_ 5.7.10要求密码中包含下划线
set password for 'root'@'localhost' = password('123456QWEasd_');
2.2、解决办法2:修改策略
【查看当前默认的密码策略】
SHOW VARIABLES LIKE 'validate_password%';
【修改密码策略等级】
默认的策略等级是:MEDIUM
通过该命令修改等级为低级:set global validate_password_policy=LOW;
从图中可以看出,修改之后密码可以设置成"asd123456"
【修改密码的默认长度】
设置密码的长度为6位数
set global validate_password_length=6;
从图中可以看出,设置之后密码可以设置成6位数("123456")