Kafka Connect 未能添加 MySqlConnector

Posted

技术标签:

【中文标题】Kafka Connect 未能添加 MySqlConnector【英文标题】:Kafka Connect failed to add MySqlConnector 【发布时间】:2019-01-20 23:31:55 【问题描述】:

我需要别人的帮助。

我按照教程 Streaming Data from mysql into Kafka with Kafka Connect and Debezium 进行操作,但我无法使用 Debezium MySQL 连接器将 MySql 连接到 Kafka 服务器。

这是我的设置和其他信息。

操作系统:Windows 10。

卡夫卡连接:Confluent 5.0。

MySQL 连接器:0.8.1 最终版。

我保留文件

.

我添加插件路径

当我尝试连接到 Kafka Connect 时,它返回了一个错误。 "找不到任何实现 Connector 且名称与 io.debezium.connector.mysql.MySqlConnector 匹配的类"

我错过了什么吗?有人可以帮忙吗?

【问题讨论】:

如果您在 kafka-connect 已经启动并运行时添加了连接器,那么您需要手动加载连接器,或者重新启动 kafka-connect @GiorgosMyrianthous 我已经重启了 kafka Connect 服务器,但结果还是一样。 你需要将jar文件放在kafka-connect属性中定义的plugins.path下,通常指向/usr/share/java @GiorgosMyrianthous 我已将所有插件文件夹放在自定义路径中,并且我已经根据图 1 和图 2 在 kafka-connect 属性文件中添加了路径。 如我所说,只将jar文件放在/usr/share/java下。 【参考方案1】:

确保您已将 .jar 连接器文件放在 plugins.path 下,该文件在 kafka-connect 属性中定义,通常映射到 /usr/share/java

在正确的目录下添加连接器后,您需要加载连接器或重新启动 kafka-connect 以便在启动时自动加载它。

【讨论】:

如图1我设置了plugin.path映射到2个目录但是为什么它没有映射到那些路径? 为什么要把那个jar文件放到别的目录下? 自从我阅读了关于添加插件的文档。我知道我们可以使用自定义目录,然后我们必须在属性文件中添加自定义路径。如果我错了,请纠正我。 同样怀疑将 jar 放在另一个目录中。 @W.Phromma 你有什么想法吗?我们应该复制哪个罐子?【参考方案2】:

您的插件路径错误 (confluent-5.0.0\share\java) 要么它应该以 / 开头(这意味着当前驱动器的根目录),要么你应该给出完整的路径。

这是连接器 jar 不存在于类路径中的原因

【讨论】:

以上是关于Kafka Connect 未能添加 MySqlConnector的主要内容,如果未能解决你的问题,请参考以下文章

如何将 kafka-connect-jdbc-5.5.0.jar 添加到 Debezium/connect

如何在 Kafka Connect JDBC Source 连接器中添加显式 WHERE 子句

Kafka Connect,插件路径

设置 Kafka Connect,无法重命名组 ID

Kafka Connect - 如何删除连接器

kafka connect debezium mongodb连接器无法加载