我已经设置了 Kafka 连接,启动正常。我正在尝试使用 wal2json 共享库将 Debezium 源连接器设置到 Azure 灵活服务器。我已启用 wal2json 并且可以手动创建 wal2json 类型的复制槽,但是当我尝试运行时:
curl -X POST -H "Content-Type: application/json" --data @pg-source-connector.json http://localhost:8083/connectors
我收到以下错误:
“error_code”:400,“message”:“连接器配置无效并包含以下 1 个错误:‘plugin.name’值无效:值必须是解码器bufs、pgoutput 之一”
我的配置文件有“plugin.name”:“wal2json”,Kafka连接有什么原因不接受wal2json插件吗? Postgres 数据库配置为支持它,我假设它会读取数据库支持哪些插件。 Kafka 端还有其他地方需要启用这个插件吗?
我尝试在 wal2json 类型的数据库上手动创建复制槽,效果很好。这告诉我数据库将支持它,但 Kafka 并未将其视为可用的插件。 Debezium 文档显示支持以下内容:“支持的值包括解码器bufs、wal2json、wal2json_rds、wal2json_streaming、wal2json_rds_streaming 和 pgoutput。”
如果您使用 debezium 版本 2.x,它不支持 wal2json。 Debezium 版本 1.x 支持它。
由于 postgres 社区停止支持 wal2json,因此在 debezium 2.x 中,他们选择从 debezium 中删除 wal2json,以便降低连接器的总体维护成本。