SSH使用请求转发的方式连接远程MySQL
背景:
1、服务器使用 MySQL,但是绑定的地址是1270.0.1:3160,就是说,任何用户都无法使用远程连接;
2、本地开发时需要实时连接并查看远程的数据库;
3、服务器是Linux,访问端口为1025;
实现方式:
使用 SSH 的反向代理功能将服务器的3160端口映射到本地的3160端口
然后使用任意软件连接 127.0.0.1:3160 时,就会自动转发到服务器的3160
关键命令:
ssh -p 1025 -NCPf biz001@10.10.2.26 -L 3160:127.0.0.1:3160
上面的命令输入之后,会要求输入远程服务器的密码,
之后就会在后台静默绑定连接10.10.2.26的3160端口,
客户端或者代码直接连接测试,OK
其他
1、建议将个人公钥保存到服务器,这样在连接的时候就不用输入密码了,而且更安全
2、某些客户端支持使用基于 SSH 的链接,可以代替这个步骤,尤其在客户端是 Windows 的时候
3、如果链接断了,不会有提示,只能通过数据库连接被拒绝的现象来判断,此时重新执行上述命令就好,也可以通过一些软件设置为断线重连