Я получаю следующее исключение при запуске debezium с confluent enterprise.
На первый взгляд это выглядит как незначительная проблема, но я пробовал разные драйверы, и они у меня не работают. Debezium использует драйверы OCI, и это первый раз, когда я его устанавливаю, но я следовал инструкциям на веб-сайте Oracle для установки драйвера.
Моя версия Oracle:
Я пробовал следующие несколько драйверов и многое другое
`SELECT * FROM v$version;
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
"CORE 11.2.0.4.0 Production"
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production`
Я устанавливаю мгновенный клиент в своем локальном компьютере, а база данных оракула работает на удаленном компьютере. Нужно ли мне добавлять какие-либо другие файлы, кроме загруженного zip-файла мгновенного клиента?
`
[user@nodexxx oracle]$ ls -l
total 8
drwxr-xr-x. 2 root root 271 Jan 10 10:45 instantclient_11_2
drwxr-xr-x. 2 user root 4096 Jan 15 11:36 instantclient_12_2
drwxr-xr-x. 3 user root 4096 Jan 8 16:54 instantclient_19_5
[user@nodexxx oracle]$ echo $LD_LIBRARY_PATH
/opt/oracle/instantclient_12_2:
[user@nodexxx oracle]$ echo $PATH
/opt/oracle/instantclient_12_2::/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/app/confluent-5.3.1/bin:/usr/java/jdk1.8.0_231/bin:/home/user/.local/bin:/home/user/bin
[user@nodexxx oracle]$
`
Мой дистрибутив Linux показан ниже:
Развернутая конфигурация моего соединителя показана ниже:
`
[user@nodexxx oracle]$ sudo lsb_release -a
[sudo] password for user:
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 7.6 (Maipo)
Release: 7.6
Codename: Maipo
`
Я застрял и понятия не имею, как решить эту проблему.
{
"name": "test-debezium-1",
"config": {
"connector.class": "io.debezium.connector.oracle.OracleConnector",
"tasks.max": "1",
"database.tablename.case.insensitive": "true",
"database.oracle.version": "11",
"database.server.name": "deb-linux",#its just a logical name
"database.hostname": "orclnode",
"database.port": "1527",
"database.user": "xstream",
"database.password": "xstream",
"database.dbname": "mydb",
"database.pdb.name": "",
"database.out.server.name": "dbzxout",
"database.history.kafka.bootstrap.servers": "kafka1:9092,kafka2:9092,kafka3:9092",
"database.history.kafka.topic": "debezium-inventory-topic",
"snapshot.mode": "initial",
"table.whitelist": "orcl\\.debezium\\.(.*)",
"name": "test-debezium-1"
},
"tasks": [
{
"connector": "test-debezium-1",
"task": 0
}
],
"type": "source"
}
Пожалуйста, покажите свой
`SELECT * FROM v$version;
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
"CORE 11.2.0.4.0 Production"
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production`
. Где находится ваш JAR-файл?
java.sql.SQLException: No suitable driver found for jdbc:oracle:oci:@orclnode:1527/mydb
есть oci, но у jdbc будет что-то вроде этого _2_. Для меня коннекторы JDBC работают. - person OneCricketeer   schedule 15.01.2020jdbc:oracle:oci:@orclnode:1527/mydb
иjdbc:oracle:thin:@orclnode:1527:mydb
это разные протоколы. _3_ определяет JAR драйвера, который у вас отсутствует. - person Zamir Arif   schedule 15.01.2020/usr/share/java/kafka
, которые я переместил в _2_, который является правильным каталогом, как вы упомянули, но я все еще получаю ту же ошибку. - person OneCricketeer   schedule 15.01.2020/app/confluent-5.3.1/lib
? - person Zamir Arif   schedule 16.01.2020share/java/kafka-connect-jdbc
, но библиотека существует в пути к классам, и коннектору JDBC также нужен этот файл и его работа. - person OneCricketeer   schedule 16.01.2020java.lang.UnsatisfiedLinkError: no ocijdbc12 in java.library.path
можно установить как _2_, а затем запустить скрипт коннектора после этого экспорта - person Zamir Arif   schedule 16.01.2020