ORA-03135 & ORA-3136

Recently,a 10g database occured lots of alerts about ORA-03135 & ORA-3136,as follows:

Tue Jul 31 10:30:29 2007
WARNING: inbound connection timed out (ORA-3136)
Tue Jul 31 10:30:29 2007
WARNING: inbound connection timed out (ORA-3136)
Tue Jul 31 10:30:54 2007
WARNING: inbound connection timed out (ORA-3136)
Tue Jul 31 10:30:54 2007
WARNING: inbound connection timed out (ORA-3136)
Tue Jul 31 10:30:55 2007
WARNING: inbound connection timed out (ORA-3136)
Tue Jul 31 10:30:55 2007
WARNING: inbound connection timed out (ORA-3136)
Tue Jul 31 10:31:00 2007
Errors in file /oracle/ora10g/admin/ora10g/udump/ora10g_ora_26465.trc:
ORA-03113: end-of-file on communication channel
ORA-03135: connection lost contact
ORA-03135: connection lost contact

[@more@]

Applies to:
Oracle Net Services - Version: 10.2.0.1.0
This problem can occur on any platform.

Symptoms
The Oracle Net 10g parameters SQLNET.INBOUND_CONNECT_TIMEOUT and INBOUND_CONNECT_TIMEOUT_listenername default to 0 (indefinite) in 10.1. To address Denial of Service (DOS) issues, the parameters were set to have a default of 60 (seconds) in Oracle 10.2.
If applications are longer than 60 secs to authenticate with the Oracle database, the errors occur.
The following may be seen in the alert log: WARNING: inbound connection timed out (ORA-3136)
SQLNET.INBOUND_CONNECT_TIMEOUT is set to a value in seconds and determines how long a client has to provide the necessary authentication information to a database.
INBOUND_CONNECT_TIMEOUT_listenername is set to a value in seconds and determines how long a client has to complete its connect request to the listener after the network connection has been established.
To protect both the listener and the database server, Oracle Corporation recommends setting INBOUND_CONNECT_TIMEOUT_listenername in combination with the SQLNET.INBOUND_CONNECT_TIMEOUT parameter.

Cause
Whenever default timeouts are assigned to a parameter, there may be cases where this default does not work well with a particular application. However, some type of timeout on the connection establishment is necessary to combat Denial of Service attacks on the database. In this case, SQLNET.INBOUND_CONNECT__TIMEOUT and INBOUND_CONNECT_TIMEOUT_listenername were given default values of 60 seconds in Oracle 10.2. It is these timeout values that can cause the errors described in this note.
Also note that it is possilbe the reason the database is slow to authenticate, may be due to an overloaded Oracle database or node.

Solution
Set the parameters SQLNET.INBOUND_CONNECT_TIMEOUT and INBOUND_CONNECT_TIMEOUT_listenername to 0 (indefinite) or to an approprate value for the application yet still combat DOS attacks (120 for example).
These parameters are set on the SERVER side:
listener.ora: INBOUND_CONNECT_TIMEOUT_listenername
sqlnet.ora: SQLNET.INBOUND_CONNECT_TIMEOUT
Further tuning of these parameters may be needed is the problem persists.

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

转载于:http://blog.itpub.net/38542/viewspace-929630/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值