8.X版本:
#查看密码策略
show variables like '%validate_password.policy%';
show variables like '%validate_password.length%';
#修改密码策略
set global validate_password.policy=0; #设置为弱口令
set global validate_password.length=1; #密码最小长度为1
57版本:
#查看密码策略
show variables like '%validate_password_policy%';
show variables like '%validate_password_length%';
#修改密码策略
set global validate_password_policy=0;
set global validate_password_length=1;
密码策略的所有参数:
mysql> SHOW VARIABLES LIKE 'validate_password%';+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password.check_user_name | ON |
| validate_password.dictionary_file | |
| validate_password.length | 8 |
| validate_password.mixed_case_count | 1 |
| validate_password.number_count | 1 |
| validate_password.policy | MEDIUM |
| validate_password.special_char_count | 1 |
+--------------------------------------+--------+
7 rows in set (0.01 sec)
validate_password.policy(校验规则),取值范围[0,1,2],默认值1。0(LOW):只校验长度;1(MEDIUM):校验长度、大小写和特殊字符;2(STRONG):校验长度、大小写、特殊字符和dictionary_file
注意:
docker安装的mysql是没有validate_password插件的。另外,根据官网介绍,validate_password已经被废弃,未来会被移除。
作为替代方案,component_validate_password组件会被启用:
mysql -u root -p #登陆mysql,也可以用navicat工具登陆
INSTALL COMPONENT 'file://component_validate_password'; #安装组件
UNINSTALL COMPONENT 'file://component_validate_password'; #卸载组件
上面的命令可直接运行的,该组件是默认存在的,可通过命令查看插件或组件目录:
show variables like 'plugin_dir'; #查看mysql插件或组件目录