MySQL8修改密码策略报错:ERROR 1193 (HY000): Unknown system variable ‘validate_password_policy
时间:2023-04-25 08:37:00
问题描述:
修改MySQL8密码策略使用以下命令
mysql> set global validate_password_policy=LOW;
或
mysql> set global validate_password_policy=0;
错误提示:
ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'
原因分析:
使用命令:
mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
或
mysql> SHOW VARIABLES LIKE 'validate_password%';
可见均返回Empty set
原因,MySQL密码策略validate_password
默认状态为NOT activated
(说法来自stackoverflow)
解决方案:
最好先修改密码(例如)MySQL_22sql):
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新的密码';
使用命令
mysql> install plugin validate_password soname 'validate_password.so';
返回Query OK, 0 rows affected, 1 warning
再次使用命令
mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
返回表
即说明密码策略已经启用
再次使用命令
mysql> SHOW VARIABLES LIKE 'validate_password%';
返回具体参数配置
此时,可以使用命令修改密码策略
密码强度要求(0或low代表最低要求):
mysql> set global validate_password_policy=0;
密码长度要求:
mysql> set global validate_password_length=你想要的长度;
修改成功:
参考来源:
- https://stackoverflow.com/questions/55237257/mysql-validate-password-policy-unknown-system-variable
- https://www.cnblogs.com/rusing/p/10561432.html