pg_recvlogical
是一个 核心实用程序,用于从复制槽接收逻辑解码数据。
pg_recvlogical
添加于 PostgreSQL 9.4。
更改历史记录
- PostgreSQL 16
- 处理
SIGTERM
就像SIGINT
一样 (提交 8b60db77)
- 处理
- PostgreSQL 15
- 添加选项
--two-phase
(提交 cda03cfe)
- 添加选项
- PostgreSQL 10
- 添加选项
--endpos
(提交 7c030783)
- 添加选项
- PostgreSQL 9.4
- 添加 (初始提交 8bdd12bb)
示例
此 pg_recvlogical
的基本用法示例设置了一个复制槽,开始从该槽流式传输数据,并将任何解码后的数据显示在 stdout
上
$ pg_recvlogical -d test_db --slot=test_slot --create-slot --start -f -
如果执行以下语句(在隐式事务中)
testdb=# INSERT INTO foo VALUES(1); INSERT 0 1
则 pg_recvlogical
将显示解码后的数据,类似于以下内容
BEGIN 732 table public.foo: INSERT: id[integer]:1 COMMIT 732
参考
- PostgreSQL 文档: pg_recvlogical
- PostgreSQL 文档: 使用 pg_recvlogical 的逻辑解码示例