-
错误: 无法访问文件 “decoderbufs”: 没有那个文件或目录:Flink CDC 集成了 debezium,debezium 从 postgresql 采集数据需要 decoderbufs 插件支持,所以要在 postgresql 上安装 decoderbufs。
这个需要下载源码手动编译,同时需要依赖 Protobuf、Protobuf-c、PostGIS 才能编译。
由于我 yum 不能安装,只能手动编译:Postgre SQL-decoderbufs配置方法(相当麻烦)
https://github.com/debezium/postgres-decoderbufs
-
IDE 访问 pg 报错:cannot access com.google.protobuf.GeneratedMessageV3:需要在 pom 文件添加依赖
-
flink-cdc 可以查询 pg 数据,但不能捕捉更新数据:需要ALTER TABLE xxx REPLICA IDENTITY FULL;
-
org.postgresql.util.PSQLException: 错误: replication slot 正用于 PID 28817:需要指定 slot.name
(默认为 flink),Flink CDC 默认一张表占用一个 slot。多个未指定 slot.name 的连接会产生冲突。
-
致命错误: 所要求的备用服务器连接数超过了参数max_wal_senders的值(当前设置为10):当前连接数超过 max_wal_senders
。需要在 postgresql.conf 增大 max_wal_senders
。
postgres=# select pid, usename, application_name, backend_type, backend_start from pg_stat_activity;
pid | usename | application_name | backend_type | backend_start
-------+----------+---------------------------------------------+---------------------+-------------------------------
20889 | | | autovacuum launcher | 2022-04-02 10:31:44.623142+08
20891 | postgres | | background worker | 2022-04-02 10:31:44.624378+08
65726 | postgres | psql | client backend | 2022-04-08 10:02:44.980358+08
49334 | hxp | PostgreSQL JDBC Driver | client backend | 2022-04-06 11:01:00.868736+08
49349 | hxp | PostgreSQL JDBC Driver | walsender | 2022-04-06 11:01:01.345935+08
21140 | hxp | DBeaver 21.2.3 - Main <big_data_public> | client backend | 2022-04-02 10:33:36.912172+08
21141 | hxp | DBeaver 21.2.3 - Metadata <big_data_public> | client backend | 2022-04-02 10:33:36.9758+08
20887 | | | background writer | 2022-04-02 10:31:44.61592+08
20886 | | | checkpointer | 2022-04-02 10:31:44.610283+08
20888 | | | walwriter | 2022-04-02 10:31:44.616197+08
(10 行记录)
-
org.postgresql.util.PSQLException: 错误: 所有的复制槽都在使用中:槽数量超过 max_replication_slots
(默认是 10)。需要在 postgresql.conf 增大 max_replication_slots。或者删除不需要的槽:SELECT pg_drop_replication_slot('xxx');
postgres=# SELECT * FROM pg_replication_slots;
slot_name | plugin | slot_type |
------------------+-------------+-----------+
decoderbufs_demo | decoderbufs | logical |
flink | decoderbufs | logical |
xxx | decoderbufs | logical |
a | decoderbufs | logical |
b | decoderbufs | logical |
c | decoderbufs | logical |
d | decoderbufs | logical |
e1 | decoderbufs | logical |
f | decoderbufs | logical |
g | decoderbufs | logical |
(10 行记录)
为什么将 PostgreSQL 用作源的 AWS DMS 任务因所有复制槽均在使用中而失败?
postgresql之replication slot
postgresql replication slots 的一些个人理解