Flink CDC中本地写的demo jdk17 获取不到数据这个怎么回事呢?
PostgreSQL 14.3, compiled by Visual C++ build 1914, 64-bit,2.4版本。
implementation("com.ververica:flink-connector-postgres-cdc:2.4.0"),flink 用的1.17。
如果你在 Flink CDC 中使用基于 JDK 17 编写的本地 demo,但无法获取到数据,可能有以下几个原因:
CDC 配置错误:检查你的 Flink CDC 配置是否正确。确保已正确配置了源数据库(如 MySQL、Oracle 等)的连接信息,并指定了正确的表名和字段映射。
版本兼容性:确保你所使用的 Flink 版本和 Flink CDC 版本与 JDK 17 兼容。某些老版本的 Flink 可能不支持 JDK 17。建议查阅官方文档或社区资源,了解所使用的 Flink 和相关库是否与 JDK 17 兼容。
依赖项问题:确认你的项目依赖项中的 Flink CDC 相关库是否正确引入。在使用 JDK 17 的情况下,可能需要使用与该版本兼容的 Flink CDC 库。请检查你的构建工具(如 Maven 或 Gradle)配置,确保正确选择并导入适用于 JDK 17 的 Flink CDC 依赖项。
日志记录:启用详细的日志记录,以便更好地调试问题。检查 Flink CDC 和你的 demo 代码的日志输出,查看是否存在任何报错消息或异常堆栈跟踪。
权限问题:确保你的 demo 代码对源数据库具有足够的权限以读取数据。验证你所使用的数据库用户是否具有必要的权限和访问级别来执行 CDC 操作。
Flink CDC 是基于 Debezium 实现的,而 Debezium 目前还不支持使用 JDK 17 运行。因此,在使用 Flink CDC 时,建议使用 JDK 11 或者 JDK 8 等稳定版本的 JDK 进行开发和部署。
如果您使用 JDK 17 运行 Flink CDC Demo,可能会遇到获取不到数据的问题。这是因为 Debezium 的 JDBC 连接器目前还不支持 JDK 17,无法正确连接到 MySQL 数据库,导致无法获取到数据。为了解决这个问题,您可以尝试使用 JDK 11 或者 JDK 8 运行 Flink CDC Demo。
另外,需要注意的是,Flink CDC Demo 中的代码仅供参考,可能需要根据具体的需求进行修改和调整。如果您遇到了其他问题,可以提供更详
"10以下这个不对。
use pgoutput for PostgreSQL 10+。不同启动方式的,用不同的slot.name。此回答整理至钉群“Flink CDC 社区”。"
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。