处理并解决mysql8.0 caching-sha2-password问题

时间:2021-02-24 19:20:12

原文:https://blog.csdn.net/u010026255/article/details/80062153 

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 

FLUSH PRIVILEGES; #刷新权限 

如果安装目录下找不到my.ini文件 windows系统下处理如下,打开C盘 查看选项中,查看隐藏文件,如果不出意外在programeData下(C:\ProgramData\MySQL\MySQL Server 8.0)找到my.ini

关于这一点,原文参考地址为:https://blog.csdn.net/Myc_CSDN/article/details/80958249

加入这一项 default_authentication_plugin=mysql_native_password

然后在服务中重启MySQL80服务

 

 mysql 8.0以上 新版本账号密码策略修改和密码修改

     老版本的密码策略变量:

        validate_password_policy 这个参数用于控制validate_password的验证策略 0-->low  1-->MEDIUM  2-->strong。

  validate_password_length密码长度的最小值(这个值最小要是4)。

  validate_password_number_count 密码中数字的最小个数。

  validate_password_mixed_case_count大小写的最小个数。

  validate_password_special_char_count 特殊字符的最小个数。

  validate_password_dictionary_file 字典文件

 

       8.0后要注意密码策略变量变化

 

validate_password.check_user_name ON

 

 

validate_password.dictionary_file

 

 

validate_password.length

 

 

validate_password.mixed_case_count

 

 

validate_password.number_count

 

 

validate_password.policy

 

 

validate_password.special_char_count

 

 

  如:validate_password_policy 变为validate_password.policy.

  所以

  set global validate_password_policy=0;变为 set global validate_password.policy=0 ;

  密码最小长度(6):

  set global validate_password_length=6; 变为 set global validate_password.length=6

 

 修改root的密码:

 登录后

 use mysq;

 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码