在 postgresql 10 中使用逻辑复制时有什么方法可以截断吗?

Is there any way to truncate when using logical replication in postgresql 10?

是否可以在 postgresql 版本 10.1 或 9.2 中克隆截断?

我认为 9.2 是一个打字错误,因为那个不受支持的旧版本没有逻辑复制。

另外,使用 10.1 是危险的。升级到 10.12 既简单又轻松,并且会修复可能导致数据损坏的错误。

TRUNCATE 在 v10 中不被逻辑复制复制。所以你必须自己在两个系统上做:

  • 在主服务器上开始事务。

  • TRUNCATE 主节点上的 table 并等待 table 的复制完成。

  • TRUNCATE table 备用。

  • COMMIT 主事务。