首页 > 技术文章 > navicat连接远程数据库报错'client does not support authentication protocol requested by server consider ...'解决方案

xuelisheng 2019-07-15 13:51 原文

【1、cmd终端连接远程mysql数据库方法】

mysql   -uhello   -pworld     -h192.168.1.88      -P3306   -Dmysql_oa

mysql   -u用户名   -p密码   -h远程数据库IP地址   -P端口    -D数据库名

 

【2、navicat连接远程数据库报错'client does not support authentication protocol requested by server consider ...'解决方案】

原因是MySQL8.0的加密方式改变了,但是比较老版本的navicate没有来得及支持,因此需要将mysql设置为支持传统的那种密码加密,如果用比较低版本的MySQL,比如MySQL57应该就不会出现这种问题。

执行下面的两行命令即可解决:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

以及进行刷新:

FLUSH PRIVILEGES;

注意:如果第一条命令执行完后出现错误:‘ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'xxx.xxx.xxx.xxx’,则需要将第一条命令替换下面的命令即可:

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

  

推荐阅读