ITPub博客

首页 > Linux操作系统 > Linux操作系统 > WARNING: inbound connection timed out (ORA-3136)

WARNING: inbound connection timed out (ORA-3136)

原创 Linux操作系统 作者:csbwolf10 时间:2010-01-19 17:52:03 0 删除 编辑

问题

WARNING: inbound connection timed out (ORA-3136)

问题类型:

  提示

是否要重启:

重启监听程序,数据库

解决办法:

 

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

问题原因:

这个错误跟 oracle 监听的一个参数有关:SQLNET.INBOUND_CONNECT_TIMEOUT

这个参数从9i开始引入,指定了客户端连接服务器并且提供认证信息的超时时间,如果超过这个时间客户端没有提供正确的认证信息,服务器会自动中止该连接请求,同时会记录试图连接的IP地址和ORA-12170: TNS:Connect timeout occurred错误。

 

这个参数的引入,主要是防止DoS攻击,恶意攻击者可以通过不停的开启大量连接请求,占用服务器的连接资源,使得服务器无法提供有效服务。在10.2.0.1起,该参数默认设置为60秒

 

但是,这个参数的引入也导致了一些相关的bug。比如:

 

Bug 5594769 - REMOTE SESSION DROPPED WHEN LOCAL SESSION SHARED AND INBOUND_CONNECT_TIMEOUT SET

 

Bug 5249163 - CONNECTS REFUSED BY TNSLSNR EVERY 49 DAYS FOR INBOUND_CONNECT_TIMEOUT SECONDS

 

该参数可以通过设置为0来禁用,在服务媏

 

设置sqlnet.ora文件:SQLNET.INBOUND_CONNECT_TIMEOUT=0

 

设置listener.ora文件: INBOUND_CONNECT_TIMEOUT_listenername=0

 

然后reload或者重启监听

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10113559/viewspace-625500/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-10-14

  • 博文量
    73
  • 访问量
    187335