关于Mysql数据库连接Navicat时出现1251报错问题的解决方法

在Mysql数据库出问题后,如果按照方法去解决,还不如直接删除重装,当然这里就要看自己的彻底删除MySQL数据库的方法对不对,后面成功彻底删除了MySQL数据库,配置好了MySQL数据库的系统环境变量,用Navicat软件连接MySQL数据库时,就弹出了一个1251报错问题。
在这里插入图片描述
翻译过来就是:客户端不支持服务器请求的认证协议,考虑升级MySQL客户端

但其实是加密规则的问题

出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
解决办法:把mysql用户登录密码加密规则还原成mysql_native_password.

MySQL 的环境变量配置教程链接:如何配置MySQL数据库的系统环境变量问题

解决方法:

  1. 打开cmd命令窗口,输入命令 mysql -u root -p 打开MySQL数据库,然后输入root账号的密码进行登录。
    在这里插入图片描述

  2. 在mysql中先更改加密方式

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

eg:
在这里插入图片描述

  1. 由于加密规则更改,所以需要重新设置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

eg:
在这里插入图片描述

  1. 最后在刷新一下数据库
FLUSH PRIVILEGES;

eg:
在这里插入图片描述

这样我们再去连接MySQL服务时就可以成功连接了

在这里插入图片描述

参考链接:

navicat连接mysql时报错1251怎么办

Navicat连接mysql报错 1251错误

猜你喜欢

转载自blog.csdn.net/qq_42701659/article/details/124660852