美文网首页数据库
关于ORA-3136的处理思路

关于ORA-3136的处理思路

作者: 数据与人 | 来源:发表于2021-04-15 09:04 被阅读0次

在告警日志里出现了大量ORA-3136的报错,于是mos上查看:

从MOS的465043.1:Troubleshooting ORA-3136: WARNING Inbound Connection Timed Out,这篇文章找到一些端倪:

这个报错指出客户端连接没有在规定的时间内通过认证,这个时间是由SQLNET.INBOUND_CONNECT_TIMEOUT参数决定的。

此时在sqlnet.log($ORACLE_HOME/network/log)中可以看到有ORA-12170或TNS-12535的报错(服务端)。信息中应该包含连接的客户端地址,这将有助于判断这个问题。但是一些应用或者JDBC thin driver的应用可能没有此类信息。默认情况下,在11g以后的版本中,sqlnet.log日志不会产生。
从10.2.0.1以后的版本,参数SQLNET.INBOUND_CONNECT_TIMEOUT的默认设置是60秒。如果客户端没能在60秒内完成验证,在alert日志中就会出现Warning信息,客户端连接被终止。
这种超时限制主要用于阻止Dos(Denial of Service)服务攻击,防止大量的恶意客户端请求涌向数据库服务器,以消耗其资源。

对于这种报错的几种可能的原因:

  1. 服务器接收到来自于不支持连接此数据库的大量客户端恶意请求。这种情况下,需要抛出这种错误以及相应的行为。通过sqlnet.log中记录的客户端地址,找到错误根源。
  2. 服务器接收到一个合法的客户端连接请求,但是客户端花费了比默认60秒更长的时间来完成验证。
  3. 数据库服务器当前负载很重,以至于不能在规定的时间内完成客户端登陆验证。

为了了解这种错误的原因,可能需要如下的检查:

默认60秒的值在大多数数据库服务器验证客户端请求的情况下是合适的。如果这个过程时间太长,那么在寻找解决方法之前可以先检查如下选项:

  1. 检查数据库服务器的本地连接是否正常,速度是否合适。
  2. 如果本地连接比较快,那么可以在网络管理员的帮助下检查网络延迟。
  3. 检查数据库性能是否下降。
  4. 检查alert日志中是否有其它严重的报错,例如ORA-600或ORA-7445,如果有,那么先解决它们,这些严重的报错可能引发数据库服务器的缓慢。

这是和网络连接相关的一个错误,Metalink上给出了如下的解决方案:

1.set INBOUND_CONNECT_TIMEOUT_<listenername>=0 in listener.ora

  1. set SQLNET.INBOUND_CONNECT_TIMEOUT = 0 in sqlnet.ora of server.
  2. stop and start both listener and database.
  3. Now try to connect to DB and observe the behaviour

相关文章

  • 关于ORA-3136的处理思路

    在告警日志里出现了大量ORA-3136的报错,于是mos上查看: 从MOS的465043.1:Troublesho...

  • 关于tableView复杂cell的处理思路

    该思路针对的是一个tableview里面有各种各样的cell,比如淘宝的详情页面这种样式 针对这种界面后台返回的可...

  • 关于数据处理流程的思路

    1.nginx配置 让浏览网页的记录写在一个固定的文件里面。然后写一个定时任务的脚本,让任务定时切割那个文件,把每...

  • 1 处理思路

    1 脱离原来的站点分布2 监控3 高可用 双活4 高并发 负载均衡 安全过滤加速 排队机制 第一层1、功能1)、秒...

  • 后台服务组件的思考要点

    通用服务组件的构建思路: 1、关键在于思考数据处理方式及数据存储方式 2、关于数据处理,针对高并发场景(生产快,消...

  • 异议处理的思路

    异议处理的思路 倾听(L) - 鼓励客户陈述事实及表达想法 认同(I) - 反馈给客户你对他所说内容的理解【同理心...

  • 富贵包的处理思路

    富贵包的影响 1.脑供血不足,头晕头痛,会引发眼睛的发干发胀。 2.引发上肢放射性的麻木和疼痛, 3.颈背部发紧发...

  • python接口自动化(十九)--Json 数据处理---实战(

    简介 上一篇说了关于json数据处理,是为了断言方便,这篇就带各位小伙伴实战一下。首先捋一下思路,然后根据思路一步...

  • 关于javascript文本验证的函数式编程思路处理

    前端有一个简单的需求,验证用户输入的手机号是否符合要求,这个要求是11位数,首位必须以1开头,其余必须为数字 使用...

  • 关于MVP的一种实战

    今天给大家提供一种在iOS开发中关于MVP的一种实战思路。 我们主要介绍MVP中P(Presenter)的处理,程...

网友评论

    本文标题:关于ORA-3136的处理思路

    本文链接:https://www.haomeiwen.com/subject/synclltx.html