navicat版本低连接远程mysql报错

用navicat连接远程连接mysql,报错不知道原因。mysql安装在云服务器上ubantu,liunx基本不接触。。。。,安装ubantu也只是想练练linux。

第一个错 Can't connect to MySQL server xxx.xxx.xxx.xxx (10061)

查---

说是配置文件/etc/mysql/my.cnf中bind-address = 127.0.0.1要注释掉,改了以后重启mysql(命令service mysql restart),重启后这个报错不见了,但又出现了其他问题,说要用ssh模式连接(https://blog.csdn.net/qq_42576040/article/details/86533087),于是用了ssh模式,但还是不行

第二个错没记下来,查到要加权限,加上权限,还查看了3306端口是否对外开放(sudo netstat -tlpn),然后发现错误又变了。

进入mysql,运行以下

use mysql

update user set host='%' where user='root';

flush privileges

第三个错 ssh tunnel:server does not support diffie-hellman-group1-sha1 forkeyexchange

网上找的的答案说在 /etc/ssh/sshd_config最下面加入下面配置

KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1

Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr

 执行ssh-keygen命令

  ssh-keygen -A

重启ssh

service sshd restart

按这个做了,执行重启是就报错了

重启ssh服务时提示:Job for ssh.service failed because the control process exited with error code

说明加的东西造成的

既然第三个错误“not support diffie-hellman-group1-sha1”不支持“diffie-hellman-group1-sha1”,那我干嘛加这么多,于是只加了以下

KexAlgorithms diffie-hellman-group1-sha1
Ciphers 3des-cbc

继续执行ssh-keygen命令,重启ssh

成功执行

继续用navicat连数据库

第四个错Client does not support authentication protocol requested by server,还是验证问题

USE mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xxxx';
FLUSH PRIVILEGES;

root是用户名
localhost是ip地址127.0.0.1都是特指本机,%表示任何IP都可访问
mysql_native_password是旧的密码验证机制,xxxx是密码,最后别忘了分号;

改完以后终于连接成功了,并且不用ssh也可以连接成功

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值