给定两个主 PG12 服务器 A 和 B,让我们设置从 A 到 B 的逻辑复制。
A --> B
两台服务器都可以并且确实接收写入,并且不使用序列或唯一约束,因此没有冲突。
是否可以设置从 B 到 A 的复制,而不复制从 A 复制的数据?
来自 A 的写道:
A --> B -x-> A
从 B 写:
B --> A -x-> B
最终结果是两个数据库具有相同的数据集。
给定两个主 PG12 服务器 A 和 B,让我们设置从 A 到 B 的逻辑复制。
A --> B
两台服务器都可以并且确实接收写入,并且不使用序列或唯一约束,因此没有冲突。
是否可以设置从 B 到 A 的复制,而不复制从 A 复制的数据?
来自 A 的写道:
A --> B -x-> A
从 B 写:
B --> A -x-> B
最终结果是两个数据库具有相同的数据集。
不,那是不可能的。复制不能是循环的。
您似乎正在为 PostgreSQL 寻找多主解决方案,但没有开源解决方案。
如果我正确地认为您对表没有唯一或主键约束,那么如果表包含重复行,逻辑复制将不会执行您想要的操作。