PostgreSQL - 如何在创建外部 table 时导入自定义数据类型(使用 postgres-fdw)?

PostgreSQL - How to import custom data type when creating foreign table (using postgres-fdw)?

我正在尝试使用 postgresql_fdw (https://www.postgresql.org/docs/current/postgres-fdw.html) 创建外部 table 视图。

尝试 IMPORT FOREIGN SCHEMA public FROM SERVER replica_db1 INTO db1 时,它报告

type "public.custom_type" does not exist

https://www.postgresql.org/docs/current/postgres-fdw.html

相同

我想知道,如何自动将自定义数据类型复制到目标数据库中?

谢谢!

The documentation告诉你:

If the remote tables to be imported have columns of user-defined data types, the local server must have compatible types of the same names.

所以要确保本地数据库有一个同名的类型,最好也相似(至少有相同的文本表示)。

如果您希望下推该类型的函数和运算符,则必须将它们放入安装在两个数据库中的 extension 中。

然后在外部服务器的 extension 选项中指定该扩展名。