云计算百科
云计算领域专业知识百科平台

【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】

原因

          MySQL8.0后的版本加密规则是“caching_sha2_password”,而 MySQL8.0之前的版本加密规则是“mysql_native_password” 错误1251通常出现在连接MySQL数据库时,是因为MySQL的身份验证协议发生了变化,而旧版本的Navicat不支持新的身份验证协议。MySQL 8.0版本之后默认采用了更加安全的身份验证插件"caching_sha2_password",而Navicat较旧的版本可能无法兼容这个新的协议。

解决办法

    更改加密规则,将MySQL用户登录密码加密规则还原成“mysql_native_password”。

图例:

具体操作

前提是知道自己的mysql路径:

接下来进入正题:

  • 1 以管理员身份运行 cmd,进入MySQL的bin目录下;
    • 如果有空格,就加上双引号
  • 2输入命令“mysql -u root -p”后输入密码进入mysql
  • 3.先修改加密规则,指令为
    • ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
  • 4.更改密码,因为修改了加密规则,所以需要重新设置密码,指令为
    • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新的密码'
  • 5.最后刷新下数据库,指令为:【FLUSH PRIVILEGES;】
    • FLUSH PRIVILEGES;
  • 再使用Navicat可以成功。
赞(0)
未经允许不得转载:网硕互联帮助中心 » 【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!