【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指令中:

第一步:修改密码规则

复制代码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

第二步:更改密码,因为修改了加密规则,所以需要重新设置密码

复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新的密码'

第三步:最后刷新下数据库,指令为:【FLUSH PRIVILEGES;

复制代码
FLUSH PRIVILEGES;
相关推荐
风向决定发型丶3 小时前
redis集群搭建
数据库·redis·缓存
wei_shuo5 小时前
KES 扩展与插件开发实战:自定义函数、触发器与第三方插件集成
数据库·kes
风中芦苇啊6 小时前
从直接生成到受控配置:新一代图表Agent的SQL安全生成范式
数据库·sql·安全
吴声子夜歌6 小时前
SQL进阶——窗口函数
数据库·sql
周杰伦的稻香6 小时前
MySQL8.0+中引入的SET_USER_ID权限迭代SUPER权限指定 DEFINER
数据库·mysql
动恰客流统计6 小时前
客流统计如何结合AI分析?从传统计数到智能决策的技术升级路径
数据库·人工智能·边缘计算
夏玉林的学习之路6 小时前
如何远程连接服务器
运维·服务器
宠友信息7 小时前
多端数据互通场景下Spring Boot仿小红书源码结构设计
数据库·spring boot·redis·缓存·架构
风曦Kisaki7 小时前
#Linux数据库管理Day06:主从同步与MaxScale读写分离
linux·运维·数据库
影寂ldy7 小时前
C# try-catch 异常处理全套笔记
服务器·数据库·c#