本篇文章主要介绍了"ERROR 1819 HY000: Your password does not satisfy the current policy requirements",主要涉及到方面的内容,对于MySql感兴趣的同学可以参考一下:
为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是/var/...
mysql>select@@validate_password_length;
+----------------------------+|@@validate_password_length|+----------------------------+|8|+----------------------------+1 row inset (0.00 sec)
mysql>set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
mysql>select@@validate_password_length;
+----------------------------+|@@validate_password_length|+----------------------------+|4|+----------------------------+1 row inset (0.00 sec)
如果修改了validate_password_number_count,validate_password_special_char_count,validate_password_mixed_case_count中任何一个值,则validate_password_length将进行动态修改。
mysql>select@@validate_password_length;
+----------------------------+|@@validate_password_length|+----------------------------+|4|+----------------------------+1 row inset (0.00 sec)
mysql>select@@validate_password_mixed_case_count;
+--------------------------------------+|@@validate_password_mixed_case_count|+--------------------------------------+|1|+--------------------------------------+1 row inset (0.00 sec)
mysql>set global validate_password_mixed_case_count=2;
Query OK, 0 rows affected (0.00 sec)
mysql>select@@validate_password_mixed_case_count;
+--------------------------------------+|@@validate_password_mixed_case_count|+--------------------------------------+|2|+--------------------------------------+1 row inset (0.00 sec)
mysql>select@@validate_password_length;
+----------------------------+|@@validate_password_length|+----------------------------+|6|+----------------------------+1 row inset (0.00 sec)
当然,前提是validate_password插件必须已经安装,MySQL5.7是默认安装的。
那么如何验证validate_password插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。