Navicat For Mysql连接Mysql8.0报错:客户端不支持服务器请求的身份验证协议

avatar
作者
筋斗云
阅读量:0

windows通过navicat连接本地mysql时报错:Client does not support authentication protocol requested by server; consider upgrading MySQL client

一、问题原因

通过相关问题查阅,发现是由于navicat版本的问题造成连接失败。mysql8 之前的版本中身份验证方式是mysql_native_password,而在mysql8之后,身份验证方式是caching_sha2_password。

二、解决方法1–失败

通过Windows PowerShell(管理员),连接Mysql客户端,修改加密规则

1. 连接mysql客户端

右键windows图标,打开Windows PowerShell(一定要用管理员,不然重启服务时会提示拒绝访问),如下图所示:
在这里插入图片描述
输入以下命令:

mysql  -uroot -p 

在这里插入图片描述

2. 修改加密方式

-- 第一句 执行永不过期策略 ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;   --第二句:更改加密方式   ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!