mysql查看和修改密码策略

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

mysql查看和修改密码策略

mysql查看和修改密码策略

mysql查看和修改密码策略

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

更多参数说明查看:https://dev.mysql.com/doc/refman/8.0/en/validate-password-options-variables.html

注意:

validate_password是已插件的形式安装在mysql中的,关于该插件的更多介绍访问:https://dev.mysql.com/doc/refman/8.0/en/validate-password.html

docker安装的mysql是没有validate_password插件的。另外,根据官网介绍,validate_password已经被废弃,未来会被移除。

mysql查看和修改密码策略

作为替代方案,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插件或组件目录

mysql查看和修改密码策略