mysql最新版 Client does not support authentication protocol requested by server; consider upgrading MySQL client

在windows上安装完mysql 5.7之后,使用navicat远端连接,提示错误:

Client does not support authentication protocol requested by server; consider upgrading MySQL client

在网上找了一圈,国内网站的解决方案已经无力吐槽,大量复制和转载,没有能用的解决方案,也有可能是版本不一样,最后没解决

在国外的网站上找了一圈,解决了(主要原因是新的mysql版本是采用新的存储密码方式,而一般的客户端都没有更新,所以需要把密码的存储方式还原为以前的)

解决方法如下:

  先命令行登录mysql:

  然后输入命令:

  USE mysql;

  然后再输入:
  ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

  最后输入:

  FLUSH PRIVILEGES;

 

第二条命令解释:

root是用户名,localhost是ip地址127.0.0.1都是特指本机,mysql_native_password是旧的密码验证机制,123456是密码,

输入第二条命令,在我本机报错:ERROR 1396 (HY)))):Operation ALTER USER failed for 'root'@'localhost'

想到因为我是支持远端登录的,所以没有localhost这个选项,

最后把命令修改为:

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

就可以了。

特此记录

 

posted @ 2018-05-25 15:37  lijiyu11408237  阅读(134)  评论(0)    收藏  举报