xshell强大的隧道模式

是否存在这样一种需求或者相似的需求:
先来看如下图,存在web服务器和数据库服务器,有时为了安全起见,我们只会拥有web服务器的权限(web服务器可以访问数据库服务器),但是有时在开发中我们需要增加或改动数据,比如为了验证开发好的功能是否能正常运行,自己会做部分的测试数据,功能测试完后,需要清理数据库,怎么办?

既然都能直接访问web服务器了,那为什么不能直接访问数据库服务器呢,说白了就是想要本地通过web服务器访问数据库服务器,简单,使用xshell的隧道模式即可.
第一步,我们先建立与web服务器的登录会话.

第二步,再建立隧道,选择SSH下的隧道,点开后可以看到如下界面,(其中已经包含我已经建立好的部分隧道,请忽略)

点击添加

类型(方向):不用变,选择本地(拨出)
源主机:默认localhost或127.0.0.1即可
侦听端口:本地访问的代理端口,设置一个本地没有使用的端口即可
目标主机:数据库服务器的服务器ip
目标端口:数据库服务器端口
比如,我们数据库服务器使用的mysql数据库,对应端口为3306,对应ip为192.168.29.8,那么我们可以这样配置,将目标配置成数据的实际ip和端口,侦听端口为33306(需要保证本地电脑没有使用该端口),说明根据自己的情况做好备注即可.点击确认

配置好了,我们又如何本地连接数据服务器呢?
首先登录应用服务器,且需要一直连接才能保证我们本地连接数据库才不会断开.

现在通过本地连接数据库服务器,如下使用常用的navicat连接mysql.ip是127.0.0.1,端口填我们之前配置的侦听端口即可.

输入正确的用户名和密码,点击确定.
恭喜你也可以方便的在本地操作数据库了
14 COMMENTS