PostgreSQL 10.1 手册_部分 III. 服务器管理_第 31 章 逻辑复制_31.5. 架构
31.5.架构 31.5.1. 初始快照 逻辑复制首先复制发布者数据库上的数据快照。一旦完成, 发布者的变化就会实时发送给订阅者。订阅者按照发布者提交的顺序应用数据, 以确保任何单个订阅中的发布的事务一致性。 逻辑复制采用类似于物理流式复制的体系结构(请参见第26.2.5节)。它是通过“walsender”和“apply”进程实现的。walsender进程启动WAL的逻辑解码 (在第48章中描述),并加载标准的逻辑解码插件 (pgoutput)。该插件将从WAL读取的更改转换为逻辑复制协议 (请参阅第52.5节), 并根据发布规范过滤数据。然后使用流式复制协议将数据连续传输到应用工作人员, 应用工作人员将数据映射到本地表,并按照正确的事务顺序应用接收到的各个更改。 订阅者数据库上的应用程序始终以session_replication_role设置为replica运行,这会对触发器和约束产生通常的影响。 逻辑复制应用程序目前仅触发行触发器,不触发语句触发器。不过, 初始表同步像COPY命令一样执行, 因此触发了INSERT的行和语句触发器。 31.5.1.初始快照 给现有订阅表中的初始数...