我已经创建了一个外部表urltrackerft
在我的外部服务器util
中,它具有表urltracker
:
我已经按照以下步骤创建外部服务器和表: https://www.postgresql.org/docs/current/postgres-fdw.html
我的创建脚本如下所示:
CREATE FOREIGN TABLE urltrackerft (
id numeric NOT NULL,
...
) SERVER util
OPTIONS (schema_name 'util', table_name 'urltracker');
但是当我尝试读取urltrackerft
表时,出现以下错误消息:
在我看来,外部服务器可能未完全同步。
检查用户映射,信息看起来正确,是主机不是IP还是DNS?
对于其中一台服务器,firewall
或hba_conf
可能不正确。但是我看到主服务器中的外部服务器util
。我对此有些迷茫。感谢您的任何帮助,谢谢!
主服务器位于PostgreSQL v10上,外部服务器位于PostgreSQL v11上。
答案 0 :(得分:1)
如果我没看错你的彩色图片,那么你的外表似乎在数据库public
的模式util
中。
那么以下外部表定义将不起作用就不足为奇了:
OPTIONS (schema_name 'util', table_name 'urltracker')
改为使用schema_name 'public'
。