开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

使用flink sql的模式从oracle到oracle数据传输,这边需要加什么参数吗?

使用flink sql的模式从oracle到oracle数据传输,报错的原因应该是数据库连接长时间没有使用而被回收,这边需要加什么参数吗?image.png

展开
收起
cuicuicuic 2023-11-07 08:05:18 66 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    对于 Flink SQL 从 Oracle 到 Oracle 数据传输过程中因为数据库连接长时间没有使用而被回收的问题,可以考虑添加数据库连接超时时间参数进行配置。
    具体来说,可以在 Flink SQL 配置文件中添加以下参数:
    table.exec.connect.oracle.connection-timeout
    这是设置数据库连接超时时间的参数,单位是毫秒。将其设置为你需要的超时时长即可。
    注意:不同的数据库驱动可能会有不同的参数名,建议查看对应的 JDBC 驱动文档获取准确的参数名称。
    另外,还可以尝试通过以下方式进行优化:

    • 增加数据库连接池的大小:这样可以避免频繁创建和销毁数据库连接带来的性能开销。
    • 使用 keep-alive 参数:在数据库 URL 后面加上 ?keepAlive=true 可以使得数据库连接保持活跃状态,避免因长时间未使用而被回收。
    • 调整数据库服务器上的超时设置:根据实际情况调整服务器上的超时设置,例如登录超时时间等。
    2023-11-07 14:22:16
    赞同 1 展开评论 打赏
  • 如果在Oracle数据库之间使用Apache Flink SQL进行数据传输时出现连接被回收的错误,可能是由于数据库连接长时间未使用或连接池配置问题导致的。以下是一些建议的解决方案:

    1. 增加连接超时时间:连接池通常具有超时设置,如果连接在一段时间内未使用,连接池会自动回收该连接。您可以尝试增加连接的超时时间,以确保在传输过程中连接不会被过早地关闭。具体的超时时间设置取决于您使用的连接池和数据库驱动程序的配置。
    2. 启用自动提交:在使用Flink SQL与Oracle数据库进行交互时,确保启用自动提交功能。这样,每个查询都会自动提交事务,避免长时间不提交导致连接被回收。
    3. 调整连接池配置:如果连接池的配置不合适,可能会导致连接不足或被过早地关闭。您可以尝试调整连接池的配置,例如增加最大连接数、最小连接数或设置空闲连接的保持时间等。
    4. 使用合适的数据库驱动程序:确保您使用的数据库驱动程序与Flink和Oracle数据库兼容,并且是最新的版本。过时的驱动程序可能会导致连接问题。
    5. 确保网络稳定性:如果Flink与Oracle数据库之间的网络连接不稳定或存在延迟,也可能会导致连接被回收。请确保网络连接稳定可靠,并考虑在网络中添加必要的优化措施,如使用缓存或增加网络带宽。

    综上所述,您可以尝试调整连接池配置、增加连接超时时间、启用自动提交、使用合适的驱动程序以及确保网络稳定性等方法来解决连接被回收的问题。

    2023-11-07 10:03:17
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    SQL Server在电子商务中的应用与实践 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载

    相关镜像