无法通过SSH连接到远程Postgresql数据库

我试图通过pgAdmin3 GUI连接到端口5432上的远程服务器myHost上的Postgresql数据库。

服务器端 :

  • 我有一个Unix myUser匹配postgresqlangular色。
  • pg_hba.conf是:
    当地所有的信任
    主机全部都是127.0.0.1/32信任

客户端 :

  • 我打开一个SSH隧道:ssh -L 3333:myHost:5432 myUser @ myHost
  • 我通过pgAdmin3(或通过psql -h localhost -p 3333)连接到服务器。

我收到以下错误信息:
服务器意外地closures了连接这可能意味着服务器在处理请求之前或之中exception终止。

我试图使用psql -h localhost -p 3333 –dbname = myDB –user = mySuperUser以超级用户angular色访问特定数据库,但没有更多的成功。

我在设置中忘记了什么?
谢谢

检查远程主机是否允许隧道。 您可以与客户核对隧道是否被拒绝:

ssh -v -L 3333:myHost:5432 myUser@myHost 

就我而言,问题是隧道以IPv6地址结束:

 ssh -L 5434:localhost:5432 user@server 

用我以前使用的地址代替localhost就足够了:

 ssh -L 5434:127.0.0.1:5432 user@server 

我的生命中有15分钟的时间在stream失。 :)希望这可以节省别人的时间…

听起来就像你需要为你的用户添加权限来非本地访问postgresql。

我知道似乎通过创build隧道,你本地连接,但你可能不会通过loopback / localhost访问它。

你可能需要添加一行到pg_hba.cong我会给一个例子,但我在我的手机,对不起