5

可以使用 postgres_fdw 通过 ssh 隧道连接吗?

该数据库只能从数据库服务器访问,我需要从另一个远程服务器加入。数据库服务器使用 SSH 密钥登录。

如果可以,请问怎么做?

4

1 回答 1

1

对的,这是可能的。我像这样为mysql_fdw解决了它;

我使用 autossh 进行端口转发。使用 autossh,您可以始终保持连接。

在 Postgres 服务器上运行命令:

autossh -L 127.0.0.1:3306:mysql_ip:3306 root@mysql_ip -N -i .ssh/id_rsa.mysql

测试从 Postgres 到 Mysql 的 autossh 访问。

在 Postgres 服务器上运行命令;

mysql --host=127.0.0.1 --port=3306 -u mysqldbuser -p

最后一个不同的部分是;

CREATE SERVER mysql_server FOREIGN DATA WRAPPER mysql_fdw OPTIONS (host '127.0.0.1', port '3306'); 其他的都是一样的。

于 2021-03-05T19:13:05.883 回答