问题产生原因:密码太过简单不符合密码设计要求
解决过程:
第一步:查看现有代码设计规则
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 |
+--------------------------------------+--------+
第二步:修改策略及密码长度:或者按照上面出现的代码规则进行设计
如果出现:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.则必须修改策略及密码长度,这里我进行了修改
输入以下命令:
set global validate_password.policy=LOW;
set global validate_password.length=1;
其中validate_password_policy取值
0 or LOW 只验证长度; 1 or MEDIUM 验证长度、数字、大小写、特殊字符; 2 or STRONG 验证长度、数字、大小写、特殊字符、字典文件;
设置完成后:可以再次输入查看命令进行查看:
SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password.check_user_name | ON |
| 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 |
+--------------------------------------+-------+
最后输入修改密码语句:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
解决完成