flink cdc捕获postgresql变化数据
环境准备
- flink 1.11
- postgresql数据库,版本要大于9.4,postgresql 9.5以下版本不支持upsert。
- flink jar包
1.flink-connector-postgres-cdc.jar
2.flink-connector-jdbc_2.11-1.11.2.jar
点击下载 提取码:3p16
flink cdc功能测试
- 修改postgresql配置文件
vi postgresql.conf
修改 wal_level = logical ,重启数据库,使配置生效
- 注意:wal_level = logical源表的数据修改时,默认的逻辑复制流只包含历史记录的primary key,如果需要输出更新记录的历史记录的所有字段,需要在表级别修改参数:ALTER TABLE tableName REPLICA IDENTITY FULL; 这样才能捕获到源表所有字段更新后的值
- 将jar包导入flink lib目录
- 启动flink sql客户端
bin/sql-client.sh embedded
4.在postgre中创建测试表
create table pg_cdc_source(id int,<