PgAdmin 4 - 如何通过 ssh 隧道使用 unix 套接字连接到数据库?

Mig*_*gsi 6 postgresql connectivity pgadmin-4

尽管听起来可能与这个问题有关,但事实并非如此,因为我很喜欢使用 unix 套接字而不是 TCP/IP 套接字。

但是,我无法使用 unix 套接字和带有 pgAdmin4 的 ssh 隧道连接到远程 PostgreSQL 数据库。pgAdmin 总是声称服务器拒绝连接并要求输入密码,这让我感到奇怪。当 sshing 进入服务器并使用 psql 时,可以使用 unix 套接字(/var/run/postgresql)完美地建立连接。是否需要设置任何特殊的东西来允许这样的设置,或者这甚至可能是 pgAdmin 本身的一个错误?我很感激任何解决此问题的想法,而不必求助于远程端的 TCP/IP 连接。

我还从我当前的配置中发布了一些屏幕:

连接选项卡

ssh 隧道选项卡

Lau*_*lbe 8

使用正确的命令应该可以正常工作ssh

要从本地 Unix 套接字转发到远程套接字,请运行

ssh -L /tmp/.s.PGSQL.5555:/var/run/postgresql/.s.PGSQL.5432 -N laurenz@dbserver
Run Code Online (Sandbox Code Playgroud)

然后您将使用主机/tmp和端口 5555 进行连接。

要将本地 TCP 套接字转发到远程 Unix 套接字,请运行:

ssh -L 5555:/var/run/postgresql/.s.PGSQL.5432 -N laurenz@dbserver
Run Code Online (Sandbox Code Playgroud)

然后您将使用主机127.0.0.1和端口 5555 进行连接。