安裝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