开发者社区> 问答> 正文

投递到kafka 不会自动创建topic

我这么配置的 canal.mq.dynamicTopic=per_employee:pms.per_employee;operator_config:pms.operator_config

但kafka不会自动创建per_employee和operator_config

原提问者GitHub用户Bruce2jiang

展开
收起
古拉古拉 2023-05-08 14:15:45 267 0
2 条回答
写回答
取消 提交回答
  • 指定的库表不需要带\的: canal.mq.dynamicTopic=per_employee:pms.per_employee;operator_config:pms.operator_config 另外确保kafka自动创建topic配置已打开

    原回答者GitHub用户rewerma

    2023-05-09 17:55:25
    赞同 展开评论 打赏
  • 根据您的描述,我认为您可能需要手动在 Kafka 中创建相关的 Topic 才能让 Canal 自动投递消息。

    虽然 Canal 支持自动创建 Topic 的功能,但是这个功能默认是关闭的,您需要在配置文件中设置 canal.mq.autoCreateTopic=true 才能启用。另外,您还需要确认您使用的 Kafka 版本是否支持自动创建 Topic 的功能,因为有些版本的 Kafka 可能不支持此功能。

    如果您已经启用了自动创建 Topic 的功能,但是还是无法自动创建 Topic,那么您可以尝试手动在 Kafka 中创建相关的 Topic。您可以使用 Kafka 命令行工具或者使用 Kafka API 来创建 Topic。以下是使用命令行工具创建 Topic 的示例:

    bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic per_employee bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic operator_config 以上命令将分别创建名为 per_employee 和 operator_config 的 Topic。其中,--zookeeper 参数指定了 Kafka 使用的 ZooKeeper 地址,--replication-factor 指定了 Topic 的副本数,--partitions 指定了 Topic 的分区数。

    2023-05-08 15:50:57
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第16讲】:Spring Boot 2.0 实战Apache Kafka百万级高并发消息中间件与原理解析 立即下载
MaxCompute技术公开课第四季 之 如何将Kafka数据同步至MaxCompute 立即下载
消息队列kafka介绍 立即下载