Navicat Mysql SSH tunnel不能使用跳板机,对于需要跳板机登录的主机,他自带的SSH Tunnel就是鸡肋了。其实从原理上分析,根本不需要开启他得SSH Tunnel,使用本机强大SSH端口转发,加上跳板代理,即可完美解决。
1、先取消已经设置的SSH Tunnel,如下图都清空
2、本地配置好跳板机,跳板机文章很多,百度即可。比如我的:
替换Host , User, 123.45.67.89,这些换成你自己对应的参数:
vi ~/.ssh/config
Host *.mydomain.com
User root
ProxyCommand ssh [email protected] nc -q0 %h %p
我这个配置的含义是:所有连接*.mydomain.com域名的ssh 都使用跳板,跳板的IP为:123.45.67.89
比如我这个例子要连接 ab.mydomain.com,就会用 123.45.67.89 做为跳板。
3、然后,开机本地到远端的Mysql 监听端口,这个是本文的重点:
ssh -vNL 3367:localhost:3306 [email protected]
解释:
-v :显示log,也就是verbose信息
N:不登陆到远程,L:本地监听
-vNL 3367:localhost:3306: 开启本地3367 到远程主机 ab.mydomain.com:3306 端口的映射。
所有发往本地3367端口的数据,都转发到ab.mydomain.com:3306
4、Navicat for Mysql 配置如下参数,端口必须和上面的3367一致。3367可以根据自己情况修改,只要和上面保持一致即可。
windows下也可以,3中提到的命令,可以用plink代替:
plink -L 3367:localhost:3306 [email protected]
转自:http://www.yinqisen.cn/blog-349.html