Featured image of post MobaXterm Xshell 打通隧道让本地访问内网 MySQL 数据库

MobaXterm Xshell 打通隧道让本地访问内网 MySQL 数据库

本地开发,经常需要连接内网的 MySQL,但是直连肯定是不行的

前言

因为测试环境数据库在内网, 而我的电脑只能连接跳板机, 不能直连测试环境的数据库.所以需要一个工具来打通隧道让我本地代码可以访问内网数据库. 于是试了一下MobaXterm这个工具.

安装

  • 有绿色版本(免安装)的和安装包, 我选择了安装包下载好直接双击安装即可

配置

  • 打开MobaXterm, 然后点击上方Tunneling, 然后点击弹窗左下角的New SSH tunnel新建隧道

  • 注意这里的配置.
  • 右上角1处填写内网数据库服务ip(ssh服务器内网能联通的地址)和端口
  • 右下角2处填写你的跳板机的ip,ssh用户和端口
  • 左边3处填写你本地随便一个没被占用的端口

  • 点击图中小钥匙配置你连接跳板机的ssh秘钥
  • 配置好秘钥点击Stop all tunnels然后再点击Start all tunnels重启载入配置

  • 打开命令行运行一下命令查看是否转发成功
## 有输出代表监听成功
netstat -ano | findstr "3306"
TCP    0.0.0.0:3306           0.0.0.0:0              LISTENING       18356
TCP    [::]:3306              [::]:0                 LISTENING       18356

### 查看 3306 是否是 MySQL 服务
telnet 127.0.0.1 3306
N
 5.7.22-log [xxx]mysql_native_password
### 不是报错而是出现一堆乱码就代表转发成功, 尽情的开发吧
  • 代码中的数据库连接就可以修改为: mysql:username:password@tcp(127.0.0.1:3306)/database

  • 同理还可以配置redis之类的其它数据库

Xshell

  • xshell 操作也类型, 直接上图