PostgreSQL提供基础架构,将通过SQL执行的修改流式传输到外部使用者。 这种功能可以被用于多种目的,包括复制方案以及审计。
在流中被送出的更改通过逻辑复制槽标识。每个流正好把每一个更改输出一次。
流式传输这些更改的格式由使用的输出插件决定。PostgreSQL 发布中包括了 一个例子插件。可以编写额外的插件来扩展可用的格式选择,而无需修改任何 核心代码。每一个输出插件都能访问每一个由 INSERT产生的新行以及每一个由 UPDATE创建的新行版本。 UPDATE和DELETE 的旧行版本的可用性取决于配置的复制标识(见 REPLICA IDENTITY)。
可以通过流复制协议(见第 50.3 节和 第 46.3 节)或者通过 SQL 调用函数( 第 46.4 节)来接收流式传送的更改。也可以编写额外的 接收复制槽输出的模块而无需修改核心代码( 第 46.7 节)。