我有两个包含要同步的表的数据库。我不想同步任何其他表。我正在使用Postgres-BDR来做到这一点。
这些表是复制集common
的一部分。在某些情况下,其他表在节点之间共享名称(但不在common
中),并且节点将调用DROP TABLE
,然后调用CREATE TABLE
。即使这些表不是common
复制集的一部分,这些命令仍然会复制到其他节点,导致其他节点丢失其表中的所有数据,然后创建一个空表。
我怎么能阻止这个?我只希望将影响common
的命令复制到其他节点。
答案 0 :(得分:0)
没关系,我找到了。它可以bdr.skip_ddl_replication
使用。
我只是将bdr.skip_ddl_replication = on
放入postgresql.conf
,重新启动服务器,然后重启!像魅力一样。
修改强>
我应该谨慎地指出,文档警告说,如果使用不当,此选项可能会破坏数据库复制。但由于我将非常严格地控制表模式,因此不应该导致任何问题。