MySQL8.0之caching_sha2_password

本地MySQL8.0.18安装完成在命令行中可以正常连接访问,使用Navicat测试连接报错Authentication plugin ‘caching_sha2_password’ cannot be loaded。导致异常的原因是MySQL不同版本使用的密码加密规则不一致。在MySQL8之前的版本使用的密码加密规则是mysql_native_password,但是在MySQL8则是caching_sha2_password。

解决方案:
一、指定加密规则为mysql_native_password
使用语句修改用户加密方式ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; 后重置密码alter user user() identified by 'qwe123';
创建了一个新用户并指定,在命令行中执行语句CREATE USER 'your username'@'%' IDENTIFIED WITH mysql_native_password BY 'your password';,完成后使用新用户账号密码连接Navicat。
二、将默认密码规则设置为mysql_native_password,刷新权限并重置root密码
如仍无法使用, 应在my.cnf中设置 default_authentication_plugin = mysql_native_password完成后并执行flush privileges;

本文标题:MySQL8.0之caching_sha2_password

文章作者:xugz

发布时间:2019年11月15日 - 17:02

最后更新:2021年09月11日 - 16:20

原始链接:https://xlline.github.io/2019/11/15/MySQL-8.0%E4%B9%8Bcaching_sha2_password/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。