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

第 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)。

可以通过流复制协议使用更改(请参阅 第 53.4 节第 47.3 节),或者通过 SQL 调用函数(请参阅 第 47.4 节)来使用更改。也可以编写额外的复制槽输出使用方式,而无需修改核心代码(请参阅 第 47.7 节)。