欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

安装MySQL5.6新建用户并创建密码时总是提示密码不符合要求:ERRO_MySQL

程序员文章站 2022-06-13 12:25:38
...
bitsCN.com

安装MySQL5.6新建用户并创建密码时总是提示密码不符合要求:ERROR 1819 (HY000): Your password does NOT satisfy the CURRENT解决

安装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之间的数),如:

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 requirementsmysql> SET PASSWORD = '*0D3CED9BEC10A777AEC23CCC353A8C08A633045E';Query OK, 0 rows affected (0.01 sec)

相关选项:

--validate-password=ON/OFF/FORCE/FORCE_PLUS_PERMANENT:决定是否使用该插件(及强制/永久强制使用)。

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

validate_password_length:密码最小长度。

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

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

validate_password_policy:密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG。

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

其中关于validate_password_policy-密码强度检查等级:

0/LOW:只检查长度。

1/MEDIUM:检查长度、数字、大小写、特殊字符。

2/STRONG:检查长度、数字、大小写、特殊字符字典文件。

插件的安装启用:

插件对应的库对象文件需在配置选项plugin_dir指定的目录中。

可使用--plugin-load=validate_password.so在server启动时载入插件,或者将plugin-load=validate_password.so写入配置文件。

也可以通过如下语句在server运行时载入插件(会注册进mysql.plugins表)mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so';

为阻止该插件在运行时被删除可在配置文件中添加:

[mysqld]plugin-load=validate_password.sovalidate-password=FORCE_PLUS_PERMANENT


bitsCN.com