apache-kafka - 适用于 Oracle 的 Debezium 连接器 - 未在桌面上获取新项目或更新
问题描述
背景:我已经在 AWS Kubernetes 上安装了一个带有融合 helm 图表的 Kafka 集群。
我已经配置了一个 Oracle 服务器,所以我可以使用 Kafka Connect 连接到它。
我的 Kafka 连接配置
{
"name": "oracle-debez",
"config": {
"connector.class" : "io.debezium.connector.oracle.OracleConnector",
"tasks.max" : "1",
"database.server.name" : "servername",
"database.hostname" : "myserver",
"database.port" : "1521",
"database.user" : "myuser",
"database.password" : "mypass",
"database.dbname" : "KAFKAPOC",
"database.out.server.name" : "dbzxout",
"database.history.kafka.bootstrap.servers" : "mybrokersvc:9092",
"database.history.kafka.topic": "my-conf-topic",
"table.include.list": "MYSCHEMA.MYTABLE",
"database.oracle.version": 11,
"errors.log.enable": "true"
}
}
我以这种方式配置并创建了一些主题:
my-conf-topic:自带表 DDL servername servername.MYSCHEMA.MYTABLE
在“kafka-poc-dev.MYSCHEMA.MYTABLE”主题中是表中的所有信息。
当我启动插件时,所有信息都成功保存!但问题是每个新的插入或更新都不会出现在主题上。
还有一件事,我的oracle不是版本11,我的版本是Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production,但是如果我不把属性“database.oracle.version”:11,它给我的错误:
"org.apache.kafka.connect.errors.ConnectException: 更改事件生产者发生异常。此连接器将被停止。\n\tat io.debezium.pipeline.ErrorHandler.setProducerThrowable(ErrorHandler.java:42)\n \tat io.debezium.connector.oracle.xstream.XstreamStreamingChangeEventSource.execute(XstreamStreamingChangeEventSource.java:82)\n\tat io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:140)\n\tat io.debezium。 pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:113)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)\n\tat java.base/java .util.concurrent.FutureTask.run(FutureTask.java:264)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\tat d.java:834)\ n 原因:oracle.streams.StreamsExa:343)\n\tat io.debezium.connector.oracle.xstream.XstreamStreamingChangeEventSource.execute(XstreamStreamingChangeEventSource.java:70)\n\t... 7 更多\n"
有人可以帮我理解我在这里做错了什么吗?
现在,当我创建连接器时,表被锁定......并且数据没有到达主题......
谢谢!
解决方案
我面临着类似的问题,但目前正在使用LogMiner adapter
.
初始快照和流式传输工作正常,但如果我向 Kafka Connect 添加更多连接器以监控不同的表和模式,则无法获得更多更新/插入事件。
一切都停止了工作,即使我可以看到 LogMiner 会话仍然处于活动状态。
您是否启用了Golden Gate
复制和存档日志模式?
关于database.oracle.version
您面临的问题,您应该只使用此处提到的默认值:
"database.oracle.version" : "12+"
发布作为答案,因为我还不能发表评论。
希望它能以某种方式帮助你。
推荐阅读
- java - 属性为null时未调用Spring Boot父(2.3.0.RELEASE)异常处理方法
- r - 在 ggplot2 中将堆积条形图组合在一起
- php - 调用“mysqli_stmt_prepare”时是否应该手动检查错误?
- java - Spring 框架 1.1.2 - 具有挑战性...使用没有构建工具(Maven 或 Gradle..etc)的命令行 javac 编译器
- elasticsearch - Packetbeat 似乎正在添加未真正发送的 DNS 数据包
- python - 有没有办法指定应该在每个 Airflow 操作符开始时运行的代码块?
- animation - 一键动画与 lua in LOVE
- python - 代理错误:BeautifulSoup HTTPSConnectionPool
- sql-server - 什么是 SQL Server 中的 Oracle to_date 函数等价物
- python - bot如何从用户python中删除所有角色