命令行使用ssh隧道连接远程mysql
本地电脑A
跳板机B 主机2.2.2.2 用户名 B ssh端口号22 登录密码bbb
远程mysql C 地址 3.3.3.3 端口号3306 用户名C 密码ccc
A需要通过跳板机B才能访问C;
navicat中配置ssh可以实现在A电脑上访问C
如何实现本地代码中访问C呢?
# 假设本地使用3308端口
# 先查看端口有没有被占用
lsof -i:3308
# 命令如下, 回车后输入B的登录密码
ssh -fN -L3308:3.3.3.3:3306 -p22 B@2.2.2.2
大功告成, 本地连接localhost 3308端口即可, 登录用户名密码同C数据库原来的用户名密码; 这样代码中也可以直接连接localhost 3308
保持更高稳定性, 可使用supervisor中断后自动重连