融合的jdbc接收器连接器不适用于基于json的主题和ms sql server target db

时间:2019-07-14 00:58:17

标签: sql-server apache-kafka apache-kafka-connect

融合的jdbc接收器连接器未将数据插入ms SQL Server 2016

我的源主题中的消息来自ms SQL Server 2016,并使用序列化的json进行序列化。我的融合版本是5.2。目标数据库也是ms SQL Server 2016,用于连接目标的ID具有写权限。目标表没有任何键。 我重命名了旧的ms SQL jdbc驱动程序,并提供了ms所提供的ms SQL Server jdbc驱动程序的最新版本。我重新启动了融合连接器服务。

源连接器

{
  "name": " test-source-mssql-jdbc-bulk",
  "connector.class": "io.confluent.connect.jdbc.JdbcSourceConnector",
  "tasks.max": "10",
  "key.converter": "org.apache.kafka.connect.json.JsonConverter",
  "value.converter": "org.apache.kafka.connect.json.JsonConverter",
  "header.converter": "org.apache.kafka.connect.storage.SimpleHeaderConverter",
  "config.action.reload": "restart",
  "errors.retry.timeout": "0",
  "errors.tolerance": "none",
  "errors.log.enable": "true",
  "errors.log.include.messages": "true",
  "connection.url": "jdbc:sqlserver://test:112255;database=testdb;encrypt=false;trustServerCertificate=true;loginTimeout=30;",
  "connection.user": "testid",
  "connection.password": "********",
  "table.whitelist": "TEST_TABLE",
  "table.blacklist": "",
  "mode": "bulk",
  "table.types": "TABLE,VIEW",
  "poll.interval.ms": "600000",
  "topic.prefix": "TEST_PREFIX",
  "timestamp.delay.interval.ms": "10000"
}

目标

{
  "name": "test-sink-mssql-jdbc-bulk",
  "connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector",
  "tasks.max": "10",
  "key.converter": "org.apache.kafka.connect.json.JsonConverter",
  "value.converter": "org.apache.kafka.connect.json.JsonConverter",
  "header.converter": "org.apache.kafka.connect.storage.SimpleHeaderConverter",
  "config.action.reload": "restart",
  "errors.retry.timeout": "0",
  "errors.tolerance": "none",
  "errors.log.enable": "true",
  "errors.log.include.messages": "true",
  "topics": [
    "TESTTOPIC_TEST_PREFIX "
  ],
  "errors.deadletterqueue.topic.name": "TEST_DLQ",
  "errors.deadletterqueue.context.headers.enable": "true",
  "connection.url": "jdbc:sqlserver://test:22222;database=testdb;encrypt=false;trustServerCertificate=true;loginTimeout=30;",
  "connection.user": "testid",
  "connection.password": "*********",
  "insert.mode": "insert",
  "table.name.format": "KafkaTables",
  "pk.mode": "none",
  "pk.fields": "",
  "auto.create": "true",
  "auto.evolve": "false",
  "max.retries": "1",
  "retry.backoff.ms": "3000"
}

启动接收器连接器时,在汇合监视器中没有出现任何错误。只是没有将数据写入目标数据库。

0 个答案:

没有答案