4

我们正在使用 postgres db 托管两台服务器,(请原谅我的行话)我们通常通过终端连接,例如:

本地 =>(使用 google auth)ssh 服务器 1 =>(使用 google auth)ssh 服务器 2 => psql -h 主机名 -U Uname -d DBName

但是,这是一个忙碌的过程,我想通过 Dbeaver 连接到数据库。

我在网上浏览,我认为它可以通过 SSH 隧道来完成,但我只能通过一台服务器而无法连接到另一台服务器。

感谢您的帮助,在此先感谢!

我的试验:

ssh -A -t host1.host.server1.com \ -L 5432:localhost:5432 \ ssh -A -t queries.host.server2.com \ -L 5432:localhost:5432

我无法成功连接。即使我确实连接了,也只能连接到机器,但要访问数据库,我必须运行 psql 命令。在这一点之后,我完全迷失了。

4

1 回答 1

16

这对我有用,但只连接到一个远程主机。编辑您的连接,然后在 Connection Settings->Main 选项卡中,输入以下内容:

Host: localhost (or 127.0.0.1 if localhost doesn't work)
Database: your_database_name
User: your_database_user_name
Password: your_database_password

然后在 Connection Settings->SSH 选项卡上,输入以下内容:

Check "Use SSH Tunnel"
Host/IP: your_remote_host_name or your_remote_ip
Port: 22
User Name: your_remote_user (not database user)
Authentication Method: Public Key
Private Key: path_to_your_private_key (.pem or .ppk file)
Passphrase: your_private_key_passphrase (leave blank if you didn't use one)

然后测试连接。

于 2017-06-01T17:42:19.867 回答