navicat报错1251-Client does not support authentication requested by server;

1.错误截图

navicat报错1251-Client does not support authentication requested by server;_第1张图片

 2.网上查找原因发现是:mysql8之前的版本中加密规则是mysql_native_password,而在mysql8之后的加密规则是caching_sha2_password,这里了解一下就行。

3.解决办法两种:

第一种:就是升级navicat驱动,让它可以兼容高版本的mysql,但我用的是破解版的这里就不用第一种了。

第二种:mysql用户登录更改为老版本加密规则。

4.首先,以管理员身份运行cmd,(必须管理员身份),然后进入mysql。

mysqld -u root -p

navicat报错1251-Client does not support authentication requested by server;_第2张图片

 5.然后键入:

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

6.然后更改密码,改完加密规则后,需要重新设置新密码。

这里的"新密码"一定要改成自己的!!!

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

7.改完后,需要刷新一下数据库。

FLUSH PRIVILEGES;

你可能感兴趣的:(mysql,数据库)