You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by nomit babraa <h....@sheffield.ac.uk> on 2021/12/29 20:01:57 UTC

DEBEZIUM MYSQL CONNECTOR

Hi

I've been playing with
https://camel.apache.org/components/3.14.x/debezium-mysql-component.html
with spring boot 2.6.2 and the latest (8.0?) version of mysql (as a
docker container from here https://hub.docker.com/_/mysql, with mysql
setting as specified here
https://debezium.io/documentation/reference/stable/connectors/mysql.html#setting-up-mysql

I was unable to make this work:

When using the SPRING BOOT AUTO-CONFIGURATION starter -
camel-debezium-mysql-starter 3.14.0 , i was seeing very little boot
console output - just the line:

"ERROR --- [ebeziumConsumer] io.debezium.embedded.EmbeddedEngine : null"

I swapped to using

<dependency> <groupId>org.apache.camel</groupId>
<artifactId>camel-debezium-mysql</artifactId>
<version>3.14.0</version> </dependency>

and

<dependency> <groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.27</version> </dependency>

and then got a more verbose error:

....
Caused by: com.mysql.cj.exceptions.UnableToConnectException: Public
Key Retrieval is not allowed

I was not sure how to solve this but googling led me here:

https://stackoverflow.com/questions/55060693/debezium-mysql-error-the-connection-password-is-empty

where I read:

1) comment - "i'm using camel debezium mysql plugin which uses
debezium connectro version 1.3.1.Final, apparently it does not have
this property database.allowPublicKeyRetrieval"

2) answer - "As Jiri Pechanec suggested, I changed image: mysql to
image: mysql:5.7 in docker-compose.yml file and now it works fine."

I myself then moved to mysql:5.7 and the DEBEZIUM MYSQL CONNECTOR
worked fine. :)

However, when swapping back to the spring boot
camel-debezium-mysql-starter 3.14.0  dependency, I got the same "null"
error message and a non-working system..

There is little info on the DEBEZIUM MYSQL CONNECTOR page about what
versions of mysql/debezium/spring boot this all (last tested) works
with, nor any links to working examples. I also looked in
https://github.com/apache/camel-spring-boot-examples/search?q=debezium
and could not see any examples.

sorry, I was wondering what I should do next please?
I would like to move to the latest version of mysql, and using the
spring boot starter would be nice, although not essential...

Best wishes and a HYN.

Cheers

N

Re: DEBEZIUM MYSQL CONNECTOR

Posted by Pasquale Congiusti <pa...@gmail.com>.
Hello,
some more detailed example can be found through Apache Camel examples
repository:
https://github.com/apache/camel-examples/tree/main/examples/debezium

As Debezium is a fast evolving project with many parameters that are bound
to the database of choice, troubleshooting may result difficult. In the
past I played a little bit and most of the times, the problems were related
to the server configuratiom, as it also appear from the error trace you've
posted. The community is well active and very welcome to answer any doubt
you may have if you cannot figure it out how to solve:
https://groups.google.com/g/debezium

Regards,
Pasquale.

On Thu, Dec 30, 2021 at 7:30 AM nomit babraa <h....@sheffield.ac.uk>
wrote:

> Hi
>
> I've been playing with
> https://camel.apache.org/components/3.14.x/debezium-mysql-component.html
> with spring boot 2.6.2 and the latest (8.0?) version of mysql (as a
> docker container from here https://hub.docker.com/_/mysql, with mysql
> setting as specified here
>
> https://debezium.io/documentation/reference/stable/connectors/mysql.html#setting-up-mysql
>
> I was unable to make this work:
>
> When using the SPRING BOOT AUTO-CONFIGURATION starter -
> camel-debezium-mysql-starter 3.14.0 , i was seeing very little boot
> console output - just the line:
>
> "ERROR --- [ebeziumConsumer] io.debezium.embedded.EmbeddedEngine : null"
>
> I swapped to using
>
> <dependency> <groupId>org.apache.camel</groupId>
> <artifactId>camel-debezium-mysql</artifactId>
> <version>3.14.0</version> </dependency>
>
> and
>
> <dependency> <groupId>mysql</groupId>
> <artifactId>mysql-connector-java</artifactId>
> <version>8.0.27</version> </dependency>
>
> and then got a more verbose error:
>
> ....
> Caused by: com.mysql.cj.exceptions.UnableToConnectException: Public
> Key Retrieval is not allowed
>
> I was not sure how to solve this but googling led me here:
>
>
> https://stackoverflow.com/questions/55060693/debezium-mysql-error-the-connection-password-is-empty
>
> where I read:
>
> 1) comment - "i'm using camel debezium mysql plugin which uses
> debezium connectro version 1.3.1.Final, apparently it does not have
> this property database.allowPublicKeyRetrieval"
>
> 2) answer - "As Jiri Pechanec suggested, I changed image: mysql to
> image: mysql:5.7 in docker-compose.yml file and now it works fine."
>
> I myself then moved to mysql:5.7 and the DEBEZIUM MYSQL CONNECTOR
> worked fine. :)
>
> However, when swapping back to the spring boot
> camel-debezium-mysql-starter 3.14.0  dependency, I got the same "null"
> error message and a non-working system..
>
> There is little info on the DEBEZIUM MYSQL CONNECTOR page about what
> versions of mysql/debezium/spring boot this all (last tested) works
> with, nor any links to working examples. I also looked in
> https://github.com/apache/camel-spring-boot-examples/search?q=debezium
> and could not see any examples.
>
> sorry, I was wondering what I should do next please?
> I would like to move to the latest version of mysql, and using the
> spring boot starter would be nice, although not essential...
>
> Best wishes and a HYN.
>
> Cheers
>
> N
>