为什么要设置简单密码,不是不安全吗?因为本人内网访问的测试服务器,不想设置复杂的密码,就像简单点的密码比如root,123等。
但是新版 MySQL 8.0 加入密码安全度检测机制,导致报错。
解决方法如下
1、查看当前安全变量值,可用命令查看 validate_password 密码验证插件是否安装。
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.02 sec)
validate_password_length密码长度的最小值(这个值最小要是4)。
validate_password_number_count 密码中数字的最小个数。
validate_password_mixed_case_count大小写的最小个数。
validate_password_special_char_count 特殊字符的最小个数。
validate_password_dictionary_file 字典文件
MySQL 8.0 以上是这样的:
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
validate_password.special_char_count 1
进行调整: