错误提示:The server requested authentication method unknown to the client [caching_sha2_password]
一、原因
从MySQL 8.0.4开始,MySQL服务器的默认身份验证插件从mysql_native_password更改为caching_sha2_password。相应地,libmysqlclient现在也将caching_sha2_password用作默认身份验证机制。
二、查看情况
1、在MySQL 8.0 Command Line Client命令窗口,输入密码,
输入use mysql;
输入SELECT Host, User, plugin from user;
可以看出使用的都是caching_sha2_password用作默认身份验证机制(这里的红框,是我解决后的图片,原来4个都是caching_sha2_password)
二、解决方法
1、常见解决方法,直接接着上面的步骤,
先输入 ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;修改权限
再输入FLUSH privileges;刷新权限
到了这一步大部分人就好了,但是我却不行,我后面查了好久,才发现要在C:\ProgramData\MySQL\MySQL Server 8.0下面(这是隐藏文件)的my.ini 这个配置文件里的[mysqld]这个部分,添加default_authentication_plugin=mysql_native_password这句代码才行,然后重启服务,一切拨开云雾见月明,搞定!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/106484.html