Postgresql Postgres SSLMode值“;要求;未使用外部数据包装编译SSL支持时无效
我正试图使用外部数据包装器连接到远程服务器,以便在数据库之间传输一些数据,但keey获得的“SSLMode Value”要求“未编译SSL支持时无效”。以下是我正在运行的代码片段:Postgresql Postgres SSLMode值“;要求;未使用外部数据包装编译SSL支持时无效,postgresql,Postgresql,我正试图使用外部数据包装器连接到远程服务器,以便在数据库之间传输一些数据,但keey获得的“SSLMode Value”要求“未编译SSL支持时无效”。以下是我正在运行的代码片段: CREATE SERVER remote FOREIGN DATA WRAPPER postgres_fdw OPTIONS(dbname '...', host '...', port '...', sslmode 'require'); CREATE USER MAPPING FOR USER SERVER r
CREATE SERVER remote FOREIGN DATA WRAPPER postgres_fdw
OPTIONS(dbname '...', host '...', port '...', sslmode 'require');
CREATE USER MAPPING FOR USER SERVER remote
OPTIONS (user '...', password '...');
CREATE FOREIGN TABLE remote.accounts (
...
);
SELECT * FROM remote.accounts;
详细信息:未在中编译SSL支持时,sslmode值“require”无效
我尝试使用
“sslmode=require”
连接到psql
——但这似乎没有帮助。在创建服务器时,我还将sslmode
作为一个标志。我连接的postgres实例在Heroku上。如果我连接到远程服务器上的其他数据库,但从本地数据库失败,则会运行查询。如何修复未编译的SSL支持 本地PostgreSQL实例使用本地libpq
库连接到远程实例
如果在编译时,该库已配置了--with openssl
(传递到postgres源代码树的顶级/configure
脚本的选项),则它将动态链接到openssl
库,并添加用于加密会话的调用站点
另一方面,如果未配置此选项,则生成的libpq
根本不具备任何SSL功能,并且该库不可能连接到需要SSL的远程服务器
根据错误消息,您处于第二种情况
解决此问题的唯一方法是将已安装的libpq
库替换为另一个使用SSL支持编译的库,这也意味着您的系统上安装了OpenSSL。您可以自己编译它,也可以根据自己的喜好通过软件包安装它。一般来说,PostgreSQL的预编译版本现在倾向于启用SSL支持
即使libpq源代码在服务器的源代码中,也可以单独编译它们并独立于其他库使用该库。
有一个问题:本地PostgreSQL实例使用本地
libpq
库连接到远程实例
如果在编译时,该库已配置了--with openssl
(传递到postgres源代码树的顶级/configure
脚本的选项),则它将动态链接到openssl
库,并添加用于加密会话的调用站点
另一方面,如果未配置此选项,则生成的libpq
根本不具备任何SSL功能,并且该库不可能连接到需要SSL的远程服务器
根据错误消息,您处于第二种情况
解决此问题的唯一方法是将已安装的libpq
库替换为另一个使用SSL支持编译的库,这也意味着您的系统上安装了OpenSSL。您可以自己编译它,也可以根据自己的喜好通过软件包安装它。一般来说,PostgreSQL的预编译版本现在倾向于启用SSL支持
即使libpq源代码在服务器的源代码中,也可以单独编译它们并独立于其他库使用该库。
有一个问题:RPostgreSQL代码显示了一个参数,使用\u SSL,如果未定义它()将导致错误消息()。如何定义/确定USE_SSL?RPostgreSQL代码显示参数USE_SSL,如果未定义()将导致错误消息()。如何定义/确定使用SSL?