查看MySQL文檔發現5.7版本後加入了對用戶密碼嚴格的管理規範,具體設置字段以下:mysql
validate_password_dictionary_file #插件用於驗證密碼強度的字典文件路徑。 validate_password_length #密碼最小長度,參數默認爲8,它有最小值的限制,最小值爲: #validate_password_number_count + #validate_password_special_char_count + (2 * #validate_password_mixed_case_count) validate_password_mixed_case_count #密碼至少要包含的小寫字母個數和大寫字母個數。 validate_password_number_count #密碼至少要包含的數字個數。 validate_password_policy #密碼強度檢查等級,0/LOW、1/MEDIUM、2/STRONG。有如下取值: #Policy Tests Performed #0 or LOW Length # 1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters # 2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file #默認是1,即MEDIUM,因此剛開始設置的密碼必須符合長度,且必須含有數字,小寫或大寫字母,特殊字符。 validate_password_special_char_count #密碼至少要包含的特殊字符數。
因此咱們只須要禁用這些配置便可:sql
首先用命令行鏈接上sql,而後use mysql;
安全
1.查看密碼相關配置狀態:插件
mysql> SHOW VARIABLES LIKE 'validate_password%'; +--------------------------------------+--------+ | Variable_name | Value | +--------------------------------------+--------+ | validate_password_check_user_name | OFF | | validate_password_dictionary_file | | | validate_password_length | 8 | | validate_password_mixed_case_count | 1 | | validate_password_number_count | 1 | | validate_password_policy | MEDIUM | | validate_password_special_char_count | 1 | +--------------------------------------+--------+ 7 rows in set (0.01 sec)
二、禁用修改安全權限命令行
mysql> set global validate_password_policy=0; Query OK, 0 rows affected (0.00 sec) mysql> set global validate_password_special_char_count=0; Query OK, 0 rows affected (0.00 sec) mysql> set global validate_password_mixed_case_count=0; Query OK, 0 rows affected (0.00 sec)
3.再嘗試修改root密碼的權限:code
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'XXX.XX.XX.XX' IDENTIFIED BY '你的密碼' WITH grant option; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
4.再嘗試用Navicat Premium登陸,鏈接成功orm