MySQL 密码参数配置与修改 validate_password

时间:2020-07-16 15:56:16   收藏:0   阅读:146

MySQL 密码参数配置与修改 validate_password

该文章匹配解决MySQL Error中的1819问题

?

场景

通过root用户创建travel_agency数据库,目标是,新建一个用户然后对仅对该用户开放travel_agency数据库而非其他数据库

?

过程

?

but

在默认配置下进行第一步时会报出1819问题,说密码不符合规范

?

默认配置的介绍

在mysql5.7版本后已经默认安装validate_password插件,该插件可以控制密码的最低要求

我们先查询未改动的状态,即默认状态

mysql> SHOW VARIABLES LIKE ‘validate_password%‘;
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_check_user_name    | OFF    |
| 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)

常用:

不常用:

?

Solution of 1819

我们为了可以使用xx@2的密码,对相关参数做出调整即可(使用SET GLOBAL

...
set global validate_password_mixed_case_count=0;
-- 改为0对就不会强制要求必须有大小写
set global validate_password_length=2;

最终改为

mysql> show variables like ‘validate_password%‘;
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 2     |
| validate_password_mixed_case_count   | 0     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.00 sec)

?

自动增大的validate_password_length

validate_password_length会根据其他设定进行自动增大,计算公式为

密码最小长度=数字最小长度+符合最小长度+2*(大小写最小对数)

验证如下:

ysql> set global validate_password_length=2;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like ‘validate_password%‘;
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 2     |
| validate_password_mixed_case_count   | 0     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.00 sec)

mysql> set global validate_password_mixed_case_count=1;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like ‘validate_password%‘;
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 4     |
| validate_password_mixed_case_count   | 1     |
| validate_password_number_count       | 1     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 1     |
+--------------------------------------+-------+
7 rows in set (0.00 sec)

?

原文:https://www.cnblogs.com/G-Aurora/p/13322129.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!