咨询下各位大佬,flinkcdc采集Oracle,database-name取了SID,schema-name设置也没错,查询的时候会出来下查询字段后再报连接错误,但是配置信息没错啊,还会是什么原因呢[ERROR] Could not execute SQL statement. Reason: oracle.net.ns.NetException: Listener refused the connection with the following error: ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
问题描述: 用户在使用Flink CDC采集Oracle数据时,尽管已正确配置了database-name
(采用SID)和schema-name
,但在查询过程中出现短暂的字段信息展示后,随即报出连接错误。具体错误信息为:Listener refused the connection with the following error: ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
。
背景信息:
解决方案:
检查连接描述符:确保Flink CDC连接Oracle的连接字符串(connect descriptor)中使用的是正确的Service Name而非SID。即使您在database-name
中指定了SID,在某些情况下,监听器可能期望一个明确的服务名来建立连接。
验证TNS配置:检查Oracle客户端的TNSnames.ora文件,确认其中包含了指向目标数据库的正确服务名配置,且该服务名与Flink CDC配置中使用的相匹配。
网络与防火墙设置:虽然本问题直接关联于服务名称识别错误,但同时检查网络连接和防火墙规则,确保没有阻止到数据库的连接请求也是必要的步骤。
注意事项:
通过上述步骤,可以针对性地解决由于服务请求不被监听器识别而导致的连接失败问题。如果问题依旧存在,建议进一步与数据库管理员合作,排查数据库端的监听配置及日志,以获取更详细的故障原因。您可以复制页面截图提供更多信息,我可以进一步帮您分析问题原因。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。