防火墙未配置长连接导致oracle异常

本文记录了解决一个业务系统中WEB服务器访问数据库服务器时出现的连接超时问题,通过调整防火墙上的1521端口超时时间,确保了oracle数据库的会话永不超时,从而解决了客户端无法正常登陆的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是2014年碰到的一个问题,用户上线了一套业务系统,这套业务系统由WEB服务器和数据库服务器组成,在测试阶段发现客户端在访问业务系统的时候经常无法登陆,在输入用户名和密码后无法正常登陆系统,业务系统的开放商说客户端登陆的时候正是WEB服务器访问数据库服务器的时候,按照这个说法,在这个节点的访问有问题。
于是我们在WEB服务器上进行抓包,抓取了一段时间,发现了下面的情况:
防火墙未配置长连接导致oracle异常
上图中,web服务器在空闲13266秒后向oracle数据库发起请求,但是oracle数据库并没有回应,导致web服务器一直在重传这个数据包,最后web服务器发了rst包,单方向终止了这个TCP会话。
结合这个故障现象,大家想到了两台服务器之间的防火墙,这是两个不同网段服务器之间唯一的安全设备,并且防火墙的会话有超时时间,会不会是这个原因呢,查资料发现该防火墙的TCP会话超时时间默认为30分钟,截图中的数据库访问已经是在3个小时以后了,根据这些情况,我们修改了1521端口的超时时间,因为数据库工程师表示oracle的会话在现有环境中永不超时,那么我们针对1521端口的超时时间也调整为永不超时,调整完成后,故障解除。
很可惜,这次没有在oracle服务器端抓包,这是在web服务器上抓了包,现场没有这个条件,因为两个方向比较更加有说服力。

转载于:https://blog.51cto.com/1400715/2350547

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值