【问题标题】:MYSQL CDC using apache Kafka and kafka connect on my local without using docker and confluentMYSQL CDC 使用 apache Kafka 和 kafka 在我的本地连接,而不使用 docker 和 confluent
【发布时间】:2022-01-20 08:00:58
【问题描述】:

在没有 Docker 和 CDC 融合云的服务器上运行 Kafka 集群的最佳方式是什么

如何将 mysql db 连接到在本地运行的 kafka 集群并创建到另一个 mysql db 的 sink 连接。

我看到 REST API 是最好的方法,但不知道该怎么做。

我需要在生产者端运行配置吗?需要一些想法如何实现它

【问题讨论】:

    标签: mysql rest apache-kafka apache-kafka-connect


    【解决方案1】:

    从 MySQL 读取不需要 Confluent 产品。

    Debezium 是开源的,Apache 2.0 许可证。 Kafka 和 Kafka Connect(Debezium 使用)也是如此。

    Kafka Connect has a REST API,对,就是这样使用的。

    The Debezium tutorial 使用 MySQL 和 Docker,但所有步骤都可以在没有 Docker 的情况下重复:

    • 下载卡夫卡
    • 下载 Debezium 连接器和 MySQL 驱动程序并设置 Connect 类路径 + 插件(遵循 Debezium 安装文档)
    • 启动 Zookeeper 和 Kafka 并连接分布式服务器(按照上面的 Kafka 快速入门和连接文档,并使用分布式模式
    • 重新配置数据库地址 & HTTP-POST 教程中提到的 JSON 以启动 CDC 连接器

    要将数据接收到另一个数据库,您需要尝试使用Confluent's JDBC Sink connector

    【讨论】:

    • 我是否能够在没有 docker 的情况下在本地机器上使用 debezium 连接器实现这一点如果我必须连接 kafka 连接 mysql 连接器,我能够在本地启动 zookeeper 和 kafka 服务器我应该怎么做配置kafka服务器的属性。它相当具有挑战性,但通过某种方式应该是可能的,对吧?
    • 默认情况下,每个 Kafka 进程都为 localhost 连接正确配置。您无需触摸代理设置即可配置 Kafka Connect / Debezium;它有自己的属性文件
    • 是的,我确实解决了这个问题,但是当我尝试启动独立的 kafka 连接时无法添加 mysql 插件,当它尝试在 debezium 中添加 mysql 连接器的插件时会出错用最新版本的kafka或机器的规格做什么?
    • Java 可以在任何机器上运行,所以不能。请编辑您的问题以包含您已采取的步骤
    • 我能够修复那个错误,它与我在 mysql-connector 文件中指向它的路径有关,但现在我遇到了几个新错误
    猜你喜欢
    • 2021-02-10
    • 2022-11-21
    • 2020-02-05
    • 2022-12-16
    • 2018-02-19
    • 2021-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多