安装MySQL5.6新建用户并建立密码时老是提示密码不符合要求:ERROR 1819 (HY000): Your password does NOT satisfy the CURRENT policy requirements。
查看得知,原来MySQL5.6.6增长了密码强度验证插件validate_password,相关参数设置的较为严格,因此……
使用了该插件会检查设置的密码是否符合当前设置的强度规则,若不知足则拒绝设置。影响的语句和函数有:create user,grant,set password,password(),old password。
密码强度可由validate password strength()函数评估(返回0至100之间的数),如:html
MySQL>select VALIDATE_PASSWORD_STRENGTH('123456');
mysql>select VALIDATE_PASSWORD_STRENGTH('Password@123456 ');
注意,已经散列过的密码不被验证,如:
mysql> SET PASSWORD = PASSWORD('abc');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql
mysql> SET PASSWORD = '*0D3CED9BEC10A777AEC23CCC353A8C08A633045E';
Query OK, 0 rows affected (0.01 sec)
相关选项:sql
其中关于validate_password_policy-密码强度检查等级:函数
插件的安装启用:ui
为阻止该插件在运行时被删除可在配置文件中添加:
[mysqld]
plugin-load=validate_password.so
validate-password=FORCE_PLUS_PERMANENT
具体参考:http://dev.mysql.com/doc/refman/5.6/en/validate-password-plugin.html.net