confluent jdb c -source-connector не работает с Java - PullRequest
1 голос
/ 13 июля 2020

У меня работает jdb c -source-connector, когда я запускаю его из командной строки, как показано ниже

bin/connect-standalone.sh \
    config/connect-standalone.properties \
    config/connect_mysql-jdbc-source.properties

, но когда я анализирую содержимое файла на карту в приложении Java и создать экземпляр io.confluent.connect.jdbc.JdbcSourceConnector с картой в качестве аргумента. Я получаю

java.sql.SQLException: Доступ запрещен для пользователя ''@'localhost' (с использованием пароля: NO)

Ниже приведено содержимое моего коннектора, который, как я уже сказал, работает при вызове из командной строки и создает все 3 темы

   name=test-mysql-jdbc   
   connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
   tasks.max=1
   connection.url=jdbc:mysql://127.0.0.1:3306/loaderDB 
   connection.user=root
   connection.password=MyPassword
   table.whitelist=loader_jobs, education_event, school_unit   
   tables="loader_jobs, education_event, school_unit"
   mode=bulk
   topic.prefix=test_mysql_jdbc_ 
   numeric.mapping=best_fit   
   poll.interval.ms=86400000 
   batch.max.rows=10000

При отладке приложения я ясно вижу, что все свойства прочитаны. и когда он доходит до части, чтобы назначить URL-адрес подключения для подключения к базе данных, он выдает исключение SQL выше.

В этом классе нет ни одного упоминания о пользователе и пароле базы данных, поэтому я попробовал изменив connection.url в файле конфигурации на

connection.url=jdbc:mysql://127.0.0.1:3306/loaderDB?user=root&password=MyPassword

, но все же я получил такое же исключение

1 Ответ

0 голосов
/ 17 июля 2020

Я решил проблему, обновив мою зависимость pom следующим образом:

    <groupId>io.confluent</groupId>
    <artifactId>kafka-connect-jdbc</artifactId>
    <version>5.0.0</version>

Я использовал версию 2.0.1 раньше.

...