kettle8.3 Oracle连接运行一段时间后:Socket read timed out

前言

一段SQL在Oracle连接运行大约需要450s。因为业务需要我得运行18次,之前使用kettle8.3默认连接池的方法发现只能运行到一半然后就报错:Socket read timed out。网上的大多不清不楚

解决办法

数据库连接-选项里添加

bash 复制代码
useSSL:true
useCompression:true
rewriteBatchedStatements:true
characterEncoding:utf8
useServerPrepStmts:false
socketTimeout:800000
connectTimeout:800000
ConnectionLifetime:3600000

后三项为主要参数,注socketTimeoutconnectTimeout 参数来设置超时时间。为了适应 450 秒的查询时间,可以将超时时间设置为稍大于 450 秒,这里的 800000 表示 800 秒,单位是毫秒。

数据库连接-连接池 里添加
勾选 使用连接池,除下面用到的其他默认就行

bash 复制代码
初始大小:8;最大空闲空间:20
Initial Size: 5
Max Active Connections: 50
Max Idle Connections: 20
Min Idle Connections: 5
Max Wait Time: 600000 (10分钟)
Connection Lifetime: 3600000 (1小时)
Validation Query: SELECT 1 FROM DUAL

结尾

接下来持续监控性能和日志,关注网络状况和服务器负载,应该能够解决由于超时导致的问题了。

相关推荐
lkbhua莱克瓦2412 分钟前
基础-函数
开发语言·数据库·笔记·sql·mysql·函数
福大大架构师每日一题26 分钟前
dify 1.11.2 正式发布:向量数据库、安全增强、测试优化与多语言支持全面升级
数据库·安全
码农学院1 小时前
Mysql 中的性能调优方法
数据库·mysql
UrSpecial1 小时前
MySQL索引
数据库·mysql
DB虚空行者1 小时前
聊下几次线上删除MySQL导致的故障
数据库
一 乐2 小时前
健身房预约|基于springboot + vue健身房预约小程序系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·小程序
代码游侠2 小时前
学习笔记——IO多路复用技术
linux·运维·数据库·笔记·网络协议·学习
云飞云共享云桌面2 小时前
河北某机器人工厂8个研发设计共享一台SolidWorks云主机
运维·服务器·网络·数据库·算法·性能优化·机器人
FixPng3 小时前
【数据库】MySQL基于MyCAT分库分表
数据库·mysql
虹科网络安全3 小时前
艾体宝洞察 | 生成式AI上线倒计时:Redis如何把“延迟”与“幻觉”挡在生产线之外?
数据库·人工智能·redis