Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server Kafka Connect For MSSQL无效值java.sql.SQLException:找不到适合配置的驱动程序_Sql Server_Apache Kafka_Apache Kafka Connect - Fatal编程技术网

Sql server Kafka Connect For MSSQL无效值java.sql.SQLException:找不到适合配置的驱动程序

Sql server Kafka Connect For MSSQL无效值java.sql.SQLException:找不到适合配置的驱动程序,sql-server,apache-kafka,apache-kafka-connect,Sql Server,Apache Kafka,Apache Kafka Connect,我正在尝试使用localhost:3030将kafka connect连接到我的本地mssql 我在尝试为mssql建立新连接时收到此错误。在centos 7(linux)中。Mssql数据来自外部IP(windows),我的消费者在linux环境中 “未找到适合配置的驱动程序” 连接分布式。属性如下所示 plugin.path=/usr/local/share/java,/usr/local/share/kafka/plugins,/opt/connectors, 我在/opt/connec

我正在尝试使用
localhost:3030将kafka connect连接到我的本地mssql
我在尝试为mssql建立新连接时收到此错误。在centos 7(linux)中。Mssql数据来自外部IP(windows),我的消费者在linux环境中

“未找到适合配置的驱动程序”

连接分布式。属性
如下所示

plugin.path=/usr/local/share/java,/usr/local/share/kafka/plugins,/opt/connectors,
我在
/opt/connectors/kafka connect jdbc/
下添加了
“ojdbc7-12.1.0.2.jar”
文件,但仍然收到错误消息。我不知道怎么了

还有我的connect-console-source.properties

name=source-sqlserver-user
connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
tasks.max=1
topic.prefix=my-timestamp
connection.url=jdbc:sqlserver://externalIP;database=database;username=username;password=password

ojdbc7-12.1.0.2.jar
是Oracle的JDBC驱动程序

对于MS SQL,您需要


编辑:因为您使用Docker运行Kafka Connect,所以需要在运行之前使Kafka Connect工作程序可以使用JDBC JAR文件。您不能只运行Docker容器并将JDBC驱动程序复制到其中,因为您需要在之后重新启动Kafka Connect

为了解决这个问题,您可以将JAR从本地机器装载到容器中的相关路径。相关路径是Kafka Connect JDBC jar所在的位置。查看它所在的
fast data dev
图像

root@fast-data-dev / $ ls -l /opt/confluent-3.3.0/share/java/kafka-connect-jdbc
total 6544
-rw-r--r-- 1 root root  133842 Jul 28  2017 kafka-connect-jdbc-3.3.0.jar
-rw-r--r-- 1 root root  658466 Jul 28  2017 postgresql-9.4-1206-jdbc41.jar
-rw-r--r-- 1 root root 5575351 Jul 28  2017 sqlite-jdbc-3.8.11.2.jar
这样你就可以跑了

docker run --rm --net=host --volume ~/Downloads/mssql-jdbc-7.4.1.jre8.jar:/opt/confluent-3.3.0/share/java/kafka-connect-jdbc/mssql-jdbc-7.4.1.jre8.jar landoop/fast-data-dev:cp3.3.0
或者使用
配置将其装载到Docker Compose中:

version: '2'

services:
  kafka-cluster:
    image: landoop/fast-data-dev:cp3.3.0
    environment:
      ADV_HOST: 127.0.0.1
      RUNTESTS: 0
    ports:
      - 2181:2181                 # Zookeeper
      - 3030:3030                 # Landoop UI
      - 8081-8083:8081-8083       # REST Proxy, Schema Registry, Kafka Connect ports
      - 9581-9585:9581-9585       # JMX Ports
      - 9092:9092                 # Kafka Broker
    volumes:
      - ~/Downloads/mssql-jdbc-7.4.1.jre8.jar:/opt/confluent-3.3.0/share/java/kafka-connect-jdbc/mssql-jdbc-7.4.1.jre8.jar


值得注意的是,Confluent Platform 3.3.0非常古老,最新版本是5.3.1。如果您想查看使用JDBC驱动程序自动设置运行Kafka、Kafka Connect、SQL Server等的最新示例,请参见。

是否需要添加新文件夹/opt/connectors/Kafka Connect mssql JDBC/No,只需将MS SQL JDBC jar放在
Kafka Connect JDBC
下,就像处理另一个文件夹一样,仍然显示相同的错误消息。我在kafka connect jdbc下添加了
mssql-jdbc-7.4.1.jre12.jar
。但是,如果您使用Docker Compose,是否需要在此路径下添加
/opt/confluent-3.3.0/share/java/kafka-connect-jdbc/
/opt/connectors/kafka-connect-jdbc/
,您如何安装jdbc驱动程序?我编辑了答案以显示如何安装jdbc JAR进入你的docker容器。为什么不使用该容器的更新版本?我如何更新它?查看docker映像的标记如果数据库位于远程服务器上,为什么要使用127.0.0.1?我以为那是Kafkanconnect IP地址。
version: '2'

services:
  kafka-cluster:
    image: landoop/fast-data-dev:cp3.3.0
    environment:
      ADV_HOST: 127.0.0.1
      RUNTESTS: 0
    ports:
      - 2181:2181                 # Zookeeper
      - 3030:3030                 # Landoop UI
      - 8081-8083:8081-8083       # REST Proxy, Schema Registry, Kafka Connect ports
      - 9581-9585:9581-9585       # JMX Ports
      - 9092:9092                 # Kafka Broker
    volumes:
      - ~/Downloads/mssql-jdbc-7.4.1.jre8.jar:/opt/confluent-3.3.0/share/java/kafka-connect-jdbc/mssql-jdbc-7.4.1.jre8.jar