1251-Client does not support authentication protocol requested by server;consider upgrading MySQL cl

今天使用navicat连接mysql的时候,跳了一个错误:1251-client does not support authentication protocol requested by server;consider upgrading MySQL client
在这里插入图片描述
解决方法:
以管理员身份进入CMD,然后启动mysql:

net start mysql

如下图所示
在这里插入图片描述
然后登录mysql:

mysql -u root -p

输入自己的mysql密码后,就登录mysql了
在这里插入图片描述

接下来查看一下用户信息:

select host,user,plugin,authentication_string from mysql.user;

用户信息如下图所示:
在这里插入图片描述
这里普及一个小知识:

  • host为 % 表示不限制ip
  • localhost表示本机使用
  • plugin非mysql_native_password 则需要修改密码

这里看到plugin全是需要修改密码的,所以接下来修改一下密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'newpassword';

大小写都一样,最后的newpassword为新密码,自己设置,密码修改后查看一下用户信息:
在这里插入图片描述
在navicat里面重新连接一下,使用新密码:
在这里插入图片描述
连接成功!


版权声明:本文为will__be原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。