postgresql COPY可通过逻辑复制吗?



我在两个postgres实例之间设置了一对(逻辑上的)复制表。所有SELECT, INSERT, UPDATE, DELETE事务都按预期复制。

我的用例是从逻辑转储文件中恢复/追加几千行(自定义格式,COPY还是INSERT?)

TRUNCATE未被复制…在我的理解中(这也依赖于其他商业数据库供应商如何做到这一点),因为它绕过了复制机制所需的事务日志(如果逻辑复制依赖于WAL段,这将是另一个问题?)

由于我找不到任何关于它的文档,我想知道是否:

  • COPY绕过事务日志(WAL)?
  • COPY对逻辑复制有任何限制,因此实际上在复制环境中强制使用insert ?

注:如果我把事情弄混了,我很抱歉,我真的很想把这些话题弄清楚,以便更好地理解它们是如何协同工作的

有几件事需要纠正:

  • 逻辑复制支持TRUNCATE:

    支持复制TRUNCATE命令

    在v11

    中引入
  • 既非COPY也非TRUNCATE旁路WAL

  • COPY数据一直使用逻辑复制进行复制,就像所有其他数据修改语句一样

相关内容

  • 没有找到相关文章

最新更新