龙行博客

走路看风景,经历看人生,岁月留痕迹,人生留轨迹,17的历史,18的豪情,时间的匆忙,人生的风景,放开心胸往前走,成功再远行,放开理想往前走,梦想再行动。
现在位置:首页 > 编程语言 > MySql > mysql5.7版本设置密码报错ERROR 1819 (HY000)

mysql5.7版本设置密码报错ERROR 1819 (HY000)

龙行    MySql    2019-1-19    2699    0评论    

安装mysql的时候遇到个问题,mysql5.7版本设置密码问题:

安装mysql5.7版本是必须要设置密码的,一般开发者为了方便都会设置一些比较简单的密码:比如123456,123什么的,但是mysql5.7就不支持了

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
#ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
123原来MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格。

使用了该插件会检查设置的密码是否符合当前设置的强度规则,若不满足则拒绝设置。影响的语句和函数有:create user,grant,set password,password(),old password。

解决方案

validate_password_dictionary_file

插件用于验证密码强度的字典文件路径。

validate_password_length

密码最小长度,参数默认为8,它有最小值的限制,最小值为:validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)

validate_password_mixed_case_count

密码至少要包含的小写字母个数和大写字母个数。

validate_password_number_count

密码至少要包含的数字个数。

validate_password_policy

密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。有以下取值:

Policy                 Tests Performed                                                                                                        

0 or LOW               Length                                                                                                                      

1 or MEDIUM         Length; numeric, lowercase/uppercase, and special characters                             

2 or STRONG        Length; numeric, lowercase/uppercase, and special characters; dictionary file      

默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

validate_password_special_char_count

密码至少要包含的特殊字符数。

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.05 sec)
 
mysql> set global validate_password_mixed_case_count=0;
Query OK, 0 rows affected (0.00 sec)
 
mysql> set global validate_password_number_count=3;
Query OK, 0 rows affected (0.00 sec)
 
mysql> set global validate_password_special_char_count=0;
Query OK, 0 rows affected (0.00 sec)
 
mysql> set global validate_password_length=3;
Query OK, 0 rows affected (0.00 sec)
 
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
mysql> SHOW VARIABLES LIKE 'validate_password%';

+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_dictionary_file    |       |
| validate_password_length             | 3     |
| validate_password_mixed_case_count   | 0     |
| validate_password_number_count       | 3     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 0     |
+--------------------------------------+-------+
6 rows in set (0.00 sec)
评论一下 分享本文 赞助站长

赞助站长X

扫码赞助站长
联系站长
龙行博客
  • 版权申明:此文如未标注转载均为本站原创,自由转载请表明出处《龙行博客》。
  • 本文网址:https://www.liaotaoo.cn/160.html
  • 上篇文章:迅雷 v5.70.2去广告/超级会员/加速版
  • 下篇文章:超实用网站合合集
  • mysql
快捷导航
联系博主
在线壁纸
给我留言
四四五五
音乐欣赏
返回顶部