love wife love life —Roger的Oracle/MySQL/PostgreSQL数据恢复博客

Phone:18180207355 提供专业Oracle/MySQL/PostgreSQL数据恢复、性能优化、迁移升级、紧急救援等服务

关于ORA-3136的一个问题分析和验证

本站文章除注明转载外,均为本站原创: 转载自love wife love life —Roger的Oracle/MySQL/PostgreSQL数据恢复博客

本文链接地址: 关于ORA-3136的一个问题分析和验证

对于ora-3136这个错误,我相信大家都遇到过,因为太常见了。一客户也遇到这个问题,让进行分析。由于不方便贴日志;因此我进行了模拟并验证这个分析。

关于ORA-3136的一个问题分析和验证插图

我这里使用最新的Oracle 20c版本进行测试验证。根据常规的诊断方法,我们应该参考这个mos文档;Troubleshooting Guide ORA-3136: WARNING Inbound Connection Timed Out (Doc ID 465043.1)

另外一篇文档是:

针对上面两篇文档的方法我进行汇总一下;大致分为几种情况:

1、参数设置问题

2、防火墙

3、系统压力过大;比如出现一些latch等异常等到导致用户登录系统时进行权限等递归验操作验证失败而出现超时。

4、相关bug;可能影响share pool进而出现第三种情况。

还有一篇mos文档提到,不恰当的MTU设置也可能出现该问题。

实际上这几种问题都跟我这里讲的无关,否则我也没必要写这篇文章了。我这里需要讲是一个参数的问题:

ersion Parameter Type Modifiable Default Value Comments
12.1.0.2 sec_protocol_error_further_action STRING
Allows Multiple Values
ALTER SESSION
ALTER SYSTEM (IMMEDIATE)
(DROP,3)
11.2.0.4 sec_protocol_error_further_action STRING
Allows Multiple Values
ALTER SESSION
ALTER SYSTEM (IMMEDIATE)
CONTINUE
11.1.0.7 sec_protocol_error_further_action STRING
Allows Multiple Values
ALTER SESSION
ALTER SYSTEM (IMMEDIATE)
N/A
11.1.0.6 sec_protocol_error_further_action STRING
Allows Multiple Values
ALTER SESSION
ALTER SYSTEM (IMMEDIATE)
N/A

上述参数在11.2.0.4版本之前虽然存在,然而没有默认值;实际上这是一个Oracle Net Service方面的增强;在mos文档SEC_PROTOCOL_ERROR_FURTHER_ACTION and Bad Packets (Doc ID 1666398.1)中有一定描述。本质上来讲是进行了一定安全方面增强。比如你将该参数设置为’delay,10’。

对于频繁连接的主机,Oracle可能会将该机器识别为存在潜在攻击威胁的client;进而延迟该主机过来的Connect;而此时这些会话都将报错ora-3136.

为了验证上面这个观点,我在自己的环境中进行了测试,得到日志就是上面的图片内容。

当然当我将参数修改为默认值后,经测试每秒20多个connect都没有问题。

关于ORA-3136的一个问题分析和验证插图(1)

这个问题感觉还是蛮有意思的;不是太多见,给大家分享一下吧。

Leave a Reply

You must be logged in to post a comment.