MySQL外部数据包装器:是否为SSL连接使用SSH参数?
这可能是一个非常罕见的用例,但我想做的是: 从PostgreSQL数据库连接到(我的网站的)MySQL数据库,以创建一个从MySQL数据库获取网站用户信息的外部表 因此,到目前为止,我所做的是为PostgreSQL安装MySQL外部数据包装器(fdw),并尝试设置外部服务器。问题是,webhost只允许SSH访问数据库,而mysql_fdw只接受其他SSL参数:MySQL外部数据包装器:是否为SSL连接使用SSH参数?,mysql,postgresql,ssl,ssh,foreign-data-wrapper,Mysql,Postgresql,Ssl,Ssh,Foreign Data Wrapper,这可能是一个非常罕见的用例,但我想做的是: 从PostgreSQL数据库连接到(我的网站的)MySQL数据库,以创建一个从MySQL数据库获取网站用户信息的外部表 因此,到目前为止,我所做的是为PostgreSQL安装MySQL外部数据包装器(fdw),并尝试设置外部服务器。问题是,webhost只允许SSH访问数据库,而mysql_fdw只接受其他SSL参数: { "ssl_key", ForeignServerRelationId }, { "ssl_cert",
{ "ssl_key", ForeignServerRelationId },
{ "ssl_cert", ForeignServerRelationId },
{ "ssl_ca", ForeignServerRelationId },
{ "ssl_capath", ForeignServerRelationId },
{ "ssl_cipher", ForeignServerRelationId }
所以我的问题是,我是否可以以某种方式使用SSH登录凭据(SSH用户/pw或密钥对)来生成必要的SSL参数
有人知道如何做到这一点吗
谢谢和亲切的问候
Michael您几乎肯定不会通过ssh访问MySQL。您所做的是通过ssh访问它所在的服务器,然后连接到MySQL。您可以通过运行mysql命令行客户端或将端口转发到本地计算机来实现这一点 因此,如果您想从PostgreSQL服务器连接到MySQL,则需要从internet访问MySQL。您应该在防火墙上打开MySQL端口的PostgreSQL IP地址。然后,您在MySQL上的GRANT语句也可以让用户登录到该远程主机名。仅此远程连接有一个单独的用户 还可能需要来自PostgreSQL连接的已知客户端证书。这将进一步确保访问安全 现在-可能是您使用的服务根本不允许远程MySQL访问。在这种情况下,您要么需要设置一个永久的ssh隧道(很麻烦,当连接断断续续断开时可能会导致问题),要么从mysql端推送数据