在另一台服务器上中继PostgreSQL连接

时间:2013-04-02 16:08:37

标签: postgresql proxy

我在远程服务器上使用PostgreSQL数据库,该服务器具有非常严格的防火墙,只允许来自我们的网络服务器的连接。这使得在我自己的工作站上开发东西非常困难,因为我无法直接连接到这个服务器来测试我的代码。

我想要做的是在我们的网络服务器上设置某种代理,只需将所有查询发送到防火墙服务器。然后我可以从我的工作站使用我们的服务器来测试我的代码。任何想法如何做到这一点或其他方式来解决我的问题?

1 个答案:

答案 0 :(得分:20)

使用ssh并创建一个本地隧道,类似这样(只有在Web服务器上运行ssh守护程序时才有效)

ssh user@webserver.com -CNL localhost:5432:192.168.1.128:5432

以上内容将侦听localhost上的5432(postgres端口),并通过Web服务器将所有流量转发到远程机器。

如下面Ricky Han所述,您需要将地址192.168.1.128更改为PostgreSQL服务器的地址。

显然你也需要更改webserver.com的名称! : - )