【问题标题】:Kafka JDBC source connectorKafka JDBC 源连接器
【发布时间】:2017-10-12 23:24:32
【问题描述】:

我正在尝试使用 JDBC 源连接器从 SQL Server 获取数据。

我收到错误提示

ERROR 无法为 etc/kafka-connect-jdbc/source-quickstart-sqlserver.properties 创建作业

我的属性文件如下所示。我错过了什么?

name=test-sqlserver-jdbc-autoincrement
connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
tasks.max=1
connection.url=jdbc:sqlserver://******:1433;databaseName=****;user=****l;password=****
table.whitelist=****
mode=incrementing
incrementing.column.name=id
topic.prefix=test-sqlserver-jdbc-

此外,如果我尝试使用 curl http://localhost:8083 /JdbcSourceConnector/config/validate 获取错误详细信息,我会收到错误 url 格式错误,我认为这是 kafka 10.2.0 中的错误

【问题讨论】:

  • 您是在尝试以独立模式还是作为分布式连接器运行此连接器?对于分布式模式,您使用 curl 命令发布(或验证)的配置文件需要采用正确的 JSON 格式。
  • 独立模式
  • Confluent 网站上有一个独立模式 jdbc 源连接器的快速入门示例。见docs.confluent.io/current/connect/connect-jdbc/docs/…
  • 谢谢!我跟着它,但仍然收到错误

标签: jdbc apache-kafka


【解决方案1】:

如果您在实验环境中,请尝试以下操作。

connection.url=jdbc:mysql://127.0.0.1:3306/my_db
connection.user=user
connection.password=pass
useSSL=false

还要确保递增的列名是正确的,并且是auto-increment

【讨论】:

    【解决方案2】:

    试试下面的属性文件。

    name=test-mysql-jdbc-autoincrement
    connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
    tasks.max=1
    connection.url=jdbc:mysql://localhost:3306/training?user=admin&password=password@538&useSSL=false
    
    query=select emp.emp_dept_id, emp.timestamp, emp.emp_name, dept.dept_name from kafka_employee emp join kafka_department dept on emp.emp_dept_id = dept.dept_id
    mode=timestamp+incrementing
    
    incrementing.column.name=emp_dept_id
    timestamp.column.name=timestamp
    
    topic.prefix=test-mysql-jdbc-kp
    poll.interval.ms = 1000
    

    【讨论】:

      猜你喜欢
      • 2020-01-15
      • 2019-11-17
      • 2021-05-07
      • 2018-05-01
      • 2021-01-17
      • 2019-11-13
      • 2021-09-01
      • 2021-10-26
      • 2020-09-02
      相关资源
      最近更新 更多