MySQL8.0設置簡單密碼mysql
1、問題描述
一、在安裝MySQL8.0時,修改臨時密碼,因密碼過於簡單(如:123456),不符合MySQL密碼規範,會觸發一個報錯信息:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements。 sql
2、遇到問題
一、解決辦法調整MySQL密碼驗證規則,修改 policy 和 length 的值。
二、MySQL 5.7 進行以下設置,便可解決問題:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
三、MySQL 8.0 執行代碼:
mysql> set global validate_password_policy=0;
ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'ide
mysql> set global validate_password_length=1;
ERROR 1193 (HY000): Unknown system variable 'validate_password_length'ui
3、問題解決
一、分析: 能夠看到,修改 policy 和 length 的值,在MySQL5.7中好使,在MySQL8.0中無效。'validate_password_policy' 變量不存在。
二、解決: 先修改一個知足的密碼 (如:Root_12root)
三、密碼修改後,可用命令查看 validate_password 密碼驗證插件是否安裝。
mysql> SHOW VARIABLES LIKE 'validate_password%';
四、MySQL 8.0 調整密碼驗證規則:
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;插件
五、從新設置密碼: ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密碼';3d
4、問題總結
一、 經過查看 MySQL5.7 和 MySQL8.0 密碼驗證插件對比,可知兩個版本中,變量名不同。(_password_policy 和 _password.policy ) --- 問題緣由所在。blog