我正在使用命令: #bin / connect-standalone.sh config / connect-standalone.properties config / debezium-config.properties
我的debezium-config.properties是:
name=publications-connector
database.hostname=localhost
database.port=5432
database.user=andy
database.password=postgres
database.dbname=postgres
database.server.name=dbserver1
table.whitelist=public.publications
在Postgres中,我有一个称为出版物的表
当我在发布表中插入新记录时,我可以看到我的使用者以json格式显示新消息。
但是,当我将现有记录更新为出版物时,没有新消息发布到该主题,因此没有任何消耗。
我该如何解决?
此外,我想向我的数据库添加另一个表“ comments”。我需要对debezium-config.properties文件或其他任何地方进行哪些更改,以将这些消息发布到自己的主题?
我从控制台看到以下日志: 警告:从更新消息中'source_info [server = dbserver1'db ='postgres',.... schema = public,table = publications]'找不到表'public.publications'的值;跳过记录(io.debezium.connector.postgres.RecordsStreamProducer:333)
谢谢
答案 0 :(得分:1)
详细阅读了许多debezium主题之后,我能够通过将REPLICA IDENTITY设置为FULL来解决此问题。完成此操作后,就可以在更新中看到更新消息并使用它们。
答案 1 :(得分:0)
我认为原因是这样的: 如果表没有主键,则连接器不会为该表发出 UPDATE 或 DELETE 事件。对于没有主键的表,连接器只发出创建事件。通常,没有主键的表用于将消息附加到表的末尾,这意味着 UPDATE 和 DELETE 事件没有用。 reference resources