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

章 46. 逻辑解码

目录
46.1. 逻辑解码示例
46.2. 逻辑解码的概念
46.2.1. 逻辑解码
46.2.2. 复制槽
46.2.3. 输出插件
46.2.4. 导出的快照
46.3. 流复制协议接口
46.4. 逻辑解码SQL接口
46.5. 与逻辑解码相关的系统目录
46.6. 逻辑解码输出插件
46.6.1. 初始化函数
46.6.2. 功能
46.6.3. 输出模式
46.6.4. 输出插件回调
46.6.5. 产生输出的函数
46.7. 逻辑解码输出写入程序
46.8. 同步复制支持逻辑解码

PostgreSQL为SQL执行的修改流动到外部消耗者提供了基础设施。这个功能可以用于各种目的, 包括复制解决方案和审计。

修改以流的形式发送,通过逻辑复制槽识别。每个流准确输出每个修改一次。

这些修改的流形式是由使用的输出插件决定的。在PostgreSQL发布中提供了一个示例插件。 可以书写额外的插件扩展可用格式的选择,而不必修改任何内核代码。 每个输出插件可以访问INSERT产生的每个独立的新行和UPDATE 创建的新行版本。老的行版本的可用性对于UPDATEDELETE来说, 取决于配置的复制身份(参阅REPLICA IDENTITY)。

修改可以使用流复制协议(参阅第 49.3 节第 46.3 节),或者通过SQL调用函数 (第 46.4 节)消耗。不修改内核代码, 书写额外的消耗复制槽的输出的方法也是可能的 (参阅第 46.7 节)。