Redrock Postgres 搜索 英文
版本: 9.4 / 9.5 / 9.6 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18

第 47 章 逻辑解码

目录

47.1. 逻辑解码示例
47.2. 逻辑解码概念
47.2.1. 逻辑解码
47.2.2. 复制槽
47.2.3. 复制槽同步
47.2.4. 输出插件
47.2.5. 导出的快照
47.3. 流复制协议接口
47.4. 逻辑解码SQL接口
47.5. 与逻辑解码相关的系统目录
47.6. 逻辑解码输出插件
47.6.1. 初始化函数
47.6.2. 功能
47.6.3. 输出模式
47.6.4. 输出插件回调
47.6.5. 生成输出的函数
47.7. 逻辑解码输出写入器
47.8. 逻辑解码的同步复制支持
47.8.1. 概述
47.8.2. 注意事项
47.9. 逻辑解码的大事务流式传输
47.10. 逻辑解码的两阶段提交支持

PostgreSQL 提供了一种基础设施,可以将通过 SQL 执行的修改流式传输给外部使用者。此功能可用于各种目的,包括复制解决方案和审计。

更改以逻辑复制槽标识的流形式发出。

更改流式传输的格式由所使用的输出插件决定。PostgreSQL 发行版中提供了一个示例插件。可以通过编写额外的插件来扩展可选的格式,而无需修改任何核心代码。每个输出插件都可以访问由 INSERT 生成的每个新行以及由 UPDATE 创建的新行版本。旧行版本在 UPDATEDELETE 中的可用性取决于配置的副本标识(参见 REPLICA IDENTITY)。

可以通过流复制协议(参见 第 54.4 节第 47.3 节)或通过 SQL 调用函数(参见 第 47.4 节)来消耗更改。也可以通过不修改核心代码的方法来消耗复制槽的输出(参见 第 47.7 节)。