wal2json
用逻辑解码捕获 JSON 格式的 CDC 变更
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
wal2json | 2.6 | ETL | BSD-3-Clause | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 9630 | wal2json | 否 | 是 | 否 | 否 | 否 | 否 | - |
| 相关扩展 | decoderbufs pgoutput test_decoding pgmqtt pgq kafka_fdw wal2mongo decoder_raw pg_walinspect pg_logicalinspect |
|---|
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PGDG | 2.6 | 1817161514 | wal2json | - |
| RPM | PGDG | 2.6 | 1817161514 | wal2json_$v | - |
| DEB | PGDG | 2.6 | 1817161514 | postgresql-$v-wal2json | - |
安装
您可以直接安装 wal2json 扩展包的预置二进制包,首先确保 PGDG 仓库已经添加并启用:
BASH
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
BASH
pig
BASH
dnf
BASH
apt
BASH
此扩展不需要执行
CREATE EXTENSION语句
用法
一个逻辑解码输出插件,从 PostgreSQL WAL 生成 JSON 格式的变更数据捕获。
配置
在 postgresql.conf 中:
INI
使用流协议(pg_recvlogical)
BASH
使用 SQL 函数
SQL
输出格式 v1(每事务 JSON)
JSON
输出格式 v2(每元组 JSON)
启用方式:'format-version', '2'
关键参数
include-xids- 添加事务 ID(默认:false)include-timestamp- 添加时间戳(默认:false)include-schemas- 添加模式名(默认:true)include-types- 添加列类型(默认:true)include-pk- 添加主键信息(默认:false)include-lsn- 添加 WAL LSN(默认:false)include-not-null- 添加 NOT NULL 信息(默认:false)include-default- 添加默认表达式(默认:false)pretty-print- 格式化 JSON 输出(默认:false)filter-tables- 逗号分隔的要包含的表列表add-tables- 与 filter-tables 相同filter-msg-prefixes- 按前缀过滤逻辑消息format-version- 1(每事务)或 2(每元组)actions- 按操作类型过滤:insert、update、delete、truncate