Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 查询存储在不同服务器上的两个不同postgres数据库_Postgresql_Postgresql 9.2_Postgres Fdw - Fatal编程技术网

Postgresql 查询存储在不同服务器上的两个不同postgres数据库

Postgresql 查询存储在不同服务器上的两个不同postgres数据库,postgresql,postgresql-9.2,postgres-fdw,Postgresql,Postgresql 9.2,Postgres Fdw,我有两个POSTGRES数据库存储在不同的服务器上 “Firstdb”是版本9.2,它存储在局域网服务器的端口5432中 “Seconddb”是版本10,它作为本地主机存储在我的PC上,端口为5432 我可以通过pgAdmin4版本2.0访问这两个版本 我想在这两个数据库之间运行查询来比较数据 关于如何做到这一点有什么想法吗 感谢大家抽出时间。对于运行联邦查询,我大部分时间都在使用,这会在源数据库中创建一个外部表。非常方便,但在处理连接时有其注意事项 例如: CREATE SERVER my_s

我有两个POSTGRES数据库存储在不同的服务器上

“Firstdb”版本9.2,它存储在局域网服务器的端口5432中

“Seconddb”版本10,它作为本地主机存储在我的PC上,端口为5432

我可以通过pgAdmin4版本2.0访问这两个版本

我想在这两个数据库之间运行查询来比较数据

关于如何做到这一点有什么想法吗


感谢大家抽出时间。

对于运行联邦查询,我大部分时间都在使用,这会在源数据库中创建一个外部表。非常方便,但在处理连接时有其注意事项

例如:

CREATE SERVER my_server FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'target.host.com', port '5432', dbname 'targetdb');
CREATE USER MAPPING FOR postgres SERVER my_server OPTIONS (user 'postgres');

CREATE FOREIGN TABLE my_foreign_table (
  id INT,
  desc TEXT
)
SERVER my_server OPTIONS (schema_name 'public', table_name 'target_table');
根据评论编辑

请记住,与任何其他应用程序一样,源数据库需要访问目标数据库,并且必须在
pg_hba.conf
中对其进行描述:

托管yourdb youruser 0.0.0.0 md5


另一种方法是使用,它不创建外部表,但允许您直接向目标数据库发出查询并检索结果集,就像它是本地的一样。

使用外部数据包装器我已成功提交了代码。为我的“Seconddb”创建的外部表。但是,如果我从foreign_表查询select*,我会得到以下结果:错误:无法连接到服务器“my_server”详细信息:致命:主机“xxx.xxx.xxx.xxx”、用户“postgres”、数据库“nsw”、SSL关闭SQL状态:08001这是您现在遇到的另一个问题。您的用户无权访问目标数据库。您必须编辑目标数据库中的
pg_hba.conf
文件并添加缺少的凭据。在目标服务器中的
pg_hba.conf
处添加类似以下内容:
主机nsw postgres xxx.xxxx.xxxx.xxxx trust
。请记住,
trust
还有其他选项:请参阅我用最后一位编辑了关于
pg_hba.conf