第一种方法
修改数据库权限
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
直接修改密码
alter user 'root'@'%' identified by '123456';
刷新权限
flush privileges;
第二种方法
首先查看 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 |
+--------------------------------------+--------+
参数解释
validate_password_dictionary_file 插件用于验证密码强度的字典文件路径。
validate_password_length 密码最小长度,参数默认为8,它有最小值的限制,最小值为4
validate_password_mixed_case_count 密码至少要包含的小写字母个数和大写字母个数。
validate_password_number_count 密码至少要包含的数字个数。
validate_password_policy 密码强度检查等级,0/LOW、1/MEDIUM、2/STRONG
会发现密码长度限制是八位,因为要改成 123456,所以要改成6位
set global validate_password_length=6;
修改字母混合
set global validate_password_mixed_case_count=0;
修改密码强度
set global validate_password_policy=0;
然后修改密码
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
刷新权限
flush privileges;