Navicat 用ssh通道连接总是报错(SSH:expected key exchange group packet form serve)
2019-01-18| 程成| 116| 0| 其他
标签:NavicatSSH

说明:网上搜索资料说这是Navicat的一个bug,是版本的原因,然后换SQLyog就好了,顺便说说这个用SSH连接服务器数据库的问题。

为什么要通过SSH连接服务器呢,而不是直接在本地连接数据了,当然是因为本地电脑无法访问或者无权限访问数据库,前一个原因是数据库在服务端中的内环环境,必须通过跳板机的方式访问,还有一个是IP和域名未对外公开,就更访问不了,上图。






如何实现:


先设置数据库相关的信息
新建一个连接的时候,默认第一个选项卡就是数据库相关的,那就输入数据的IP或者域名、用户名、密码、端口号、数据库名(有的软件可能不需要输这个),然后不要着急、不要着急点“确定”或者“OK”。

再输入SSH连接的相关信息
在第一个选项卡的后面几个位置,就会看到“SSH”三个字母,这个时候呢,你就要把你跳板机,也就是你要走的那个“桥”的服务器的IP、用户名、密码、端口号、在输入进去,然后连接。


再说两句题外话:


如何确定你本地不能访问数据库呢?


mysql -hyouhost -uyouname -pyoupassword



重声一下,是-h,-u,-p,而youhost代表IP或者域名,youname代表用户名,youpassword代表密码,看看能不能连接上。

如何确定你使用的跳板机可以访问数据库呢?
还是上面的那个命令,再试一次。

如果本地可以连接上数据库,那就本地连,如果连接不上,那就用跳板机连,跳板机都连不上,估计是服务器出问题了,或者你电脑断网了。



解决方法:


1.关掉防火墙(若关掉防火墙后 行不通试下更换版本)


2.版本问题(更新版本到 Navicat 11.2 重新连接并得到解决)



参考文献:https://blog.csdn.net/weiyi556/article/details/79028386




×
作者:程成
QQ:492245711