navicate连接mysql问题:2003- Can’t connect to MySQL server on ‘127.0.0.1’
1. 【错误1】2003
2003 - Can’t connect to MySQL server on ‘127.0.0.1’ (61 “Connection refused”)


解决:勾选使用套接字文件
2. 【错误2】2059
在选择套接字文件后,出现新的错误——Navicat连接MySQL数据库出现错误:
2059 - Authentication plugin ‘caching_sha2_password’ cannot be loaded: dlopen(…/Frameworks/caching_sha2_password.so, 2): image not found
原因:MySQL新版本(8以上版本)的用户登录账户加密方式是:caching_sha2_password,Navicat不支持Mysql8的新密码加密方式。
解决方法:
把mysql中root用户的加密方式改为:mysql_native_password。
步骤:
(1)登陆mysql
mysql -u root -p
(2)查看mysql默认加密方式,以及root用户对应的host
show variables like 'default_authentication_plugin';
select host,user,plugin from mysql.user;

(3)修改root用户的加密方式
从上图可知,由于我的root用户对应的host是localhost,所以执行:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的mysql密码';
如果上图中你的root对应的host是%,则执行:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的mysql密码';
提示:如果你执行的代码中,root对应的host不正确的话,则会出现以下的错误3
3. 【错误3】-1396
ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@‘%’
原因:你执行的代码中root用户对应host错误。
解决方案:执行错误2-第(2)步的代码,查看root对应的host,再正确执行错误2-第(3)步。
4. navicate连接成功

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