更改 Debezium 连接器使用的主题名称

Posted

技术标签:

【中文标题】更改 Debezium 连接器使用的主题名称【英文标题】:Change topic name used by Debezium connector 【发布时间】:2021-10-11 06:44:07 【问题描述】:

我想使用 Debezium 连接器更改主题名称,因为我不想使用默认名称“server.schema.table”来命名主题。

【问题讨论】:

【参考方案1】:

您可以使用各种Kafka Connect transforms 来设置主题名称。

InsertField设置静态主题名称 ExtractField + ExtractTopic 用于使用记录的某些属性 RegexRouter 用于根据模式修改主题名称;例如,删除 server.schema. 前缀 你自己的一个

【讨论】:

我正在使用 ksql,我应该在连接器创建中添加哪些代码行以使 sm2.ingestion.surf.db.TableName 用作主题创建的默认名称? 能否在您的问题中显示您的连接器配置? Ksql 嵌入了 Connect。 transforms 是连接器属性。 InsertField 类型将设置静态主题名称...浏览示例链接 或者,如果您尝试在数据库名称前加上 sm2.ingestion.surf 前缀,请使用 RegexRouter

以上是关于更改 Debezium 连接器使用的主题名称的主要内容,如果未能解决你的问题,请参考以下文章

debezium - 模式注册表问题

MySQL 的 Debezium 连接器。缺少数据库历史主题

debezium - 更改主题名称会导致错误跨数据库引用

Kafka 生产者创建 Debezium MySQL 连接器后无法创建主题并引发连续错误

Debezium Mysql 连接器因 IllegalStateException 而失败,历史主题具有无限保留

为数据库中的多个表配置 debezium 连接器