Confluent平台- kafka-connect-jdbc日期时间



我们希望使用kafka-connect-jdbc从我们的传统数据库(mysql)导入数据到kafka。我已经能够设置基本的例子,并得到它的工作。

其中一个问题是其中一列应该是时间戳,对于所有行的值无效因此我们得到异常:

java.sql。sql异常:值'0000-00-00'不能表示为java.sql.Timestamp

我可以很容易地排除该列,并通过编写一个排除该列的选择查询,使用kafka-connect-jdbc中的自定义查询选项导入数据。我只是想了解一下,在补偿管理等方面的影响。其中一个问题,根据文档,这将限制我每个连接器一个主题。还有什么需要记住的吗?

我在连接字符串中使用mysql zeroDateTimeBehavior选项解决了这个特殊的问题(对于日期)。添加这样的东西&zeroDateTimeBehavior=round为我修复了它,到日期不再保持0000-00-00。更多信息在这里:

From MySql docs

zeroDateTimeBehavior

当驱动程序遇到的DATETIME值是完全由零组成(MySQL用来表示无效日期)?可取值为"exception", "round"one_answers"convertToNull"。

默认值:异常

自版本:3.1.4

我仍然想知道使用自定义查询的含义。

最新更新