最佳答案
我想使用 RazorSQL 连接到我的数据库是在一个远程服务器上运行。我使用以下命令在本地主机上创建一个 SSH 隧道:
ssh -L 1111:remote.server.com:5432 myuser@remote.server.com
我通过 RazorSQL 的 GUI 配置连接,指定 localhost
作为主机,指定 1111
作为端口。当我点击“连接”,出现以下错误消息:
ERROR: An error occurred while trying to make a connection to
the database:
JDBC URL: jdbc:postgresql://localhost:1111/myuser
FATAL:
no pg_hba.conf entry for host "aaa.bbb.ccc.ddd",
user "myuser", database "mydatabase", SSL off
其中 aaa.bbb.ccc.ddd
是远程服务器的 IP 地址。
更重要的是,我不允许更改我的 pg_hba.conf
文件的内容。现在看起来是这样的:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
@remove-line-for-nolocal@# "local" is for Unix domain socket connections only
@remove-line-for-nolocal@local all all @authmethod@
# IPv4 local connections:
host all all 127.0.0.1/32 @authmethod@
# IPv6 local connections:
host all all ::1/128 @authmethod@
是否可以使用我当前的设置通过 SSH 隧道连接到数据库服务器,而不需要修改服务器的配置?