oracle ora-3136,ORA-3136 错误解决 .

参考metalink的文档:Doc ID: Note:3136.1 and 465043.1

WARNING: inbound connection timed out (ORA-3136)

1.参数含义:

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.

2.参数意义:

在oracle 10.2以后的版本当中将SQLNET.INBOUND_CONNECT_TIMEOUT 和 INBOUND_CONNECT_TIMEOUT_listenername参

数设置缺省为60s,之前的版本当中默认为0(即关闭此功能)。这两个参数用于防止恶意client通过网络攻击db

server

Note: This timeout restriction was introduced to combat Denial of Service (DoS) attack whereby

malicious clients attempt to flood database servers with connect requests that consumes resources.

3.报出此warning的原因如下:

a.server收到一个从恶意client发来的连接请求,在这种情况下抛出的错误将是预期的和可取的。(客户端反复输错

username/password)

b.服务器接收到一个有效的客户端连接请求,但客户需要很长时间来验证超过默认60秒。(客户端网络延迟)

c.DB服务器负载很高导致它无法在指定时间内完成客户端登录请求。(数据库服务器高负载)

4.解决办法:

a.验证db server端,本地连接是否成功(listener是否可用)

b.验证本地连接是否延迟(本地网络是否高效可用)

c.验证数据库性能(db server是否高负载)

d.告警日志是否在之前报过ORA-600或ORA-7445

e.检查是否有client反复尝试登录密码(这是目前最有可能的原因)

f.关闭此功能(将2参数设置为0,设置方法参照步骤5)也可将2参数设置为适当值。

5.修改这两个参数的方法如下:

Edit the server side sqlnet.ora file and add this parameter:

SQLNET.INBOUND_CONNECT_TIMEOUT=Where is the value in seconds.

E.g.:

SQLNET.INBOUND_CONNECT_TIMEOUT = 120

Edit the listener.ora file and add this parameter:

INBOUND_CONNECT_TIMEOUT_= Again, where is the timeout value in seconds.

For example if the listener name is LISTENER then use:

INBOUND_CONNECT_TIMEOUT_LISTENER = 110

6.总结:

此warning提示,极有可能是有客户端在不知道密码的情况下,反复尝试连接数据库或登录延迟导致,个人认为可以

忽略,重启监听并不会解决该问题,只是暂时清空了监听的告警信息,也可观察一段时间,或抓取性能分析报告,确

认是否为负载过高导致性能下降从而引起的告警。

:ORA-3136 错误解决

:ORA-3136 错误解决

1、首先通过后台alter日志发现报如下错误:

Mon May 20 12:44:19 2013

WARNING: inbound connection timed out (ORA-3136)

Mon May 20 12:44:19 2013

WARNING: inbound connection timed out (ORA-3136)

Mon May 20 12:44:19 2013

WARNING: inbound connection timed out (ORA-3136)

2、观察sqlnet.log中记录如下错误:

Fatal NI connect error 12514, connecting to:

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=XXXXX)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)

(SERVICE_NAME=XXXXXXXX)(INSTANCE_NAME=XXXX)(CID=(PROGRAM=XXXXXX)(HOST=XXXXXX)

(USER=oracle))))

VERSION INFORMATION:

TNS for Linux: Version 10.2.0.1.0 - Production

TCP/IP NT Protocol Adapter for Linux: Version 10.2.0.1.0 - Production

Time: 28-11月-2008 14:10:42

Tracing not turned on.

Tns error struct:

ns main err code: 12564

TNS-12564: TNS:connection refused

ns secondary err code: 0

nt main err code: 0

nt secondary err code: 0

nt OS err code: 0

3、重新reload一下Listner:

[oracle@XXX ~]$ lsnrctl

LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 20-5月 -2013 12:54:56

Copyright (c) 1991, 2007, Oracle.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> reload

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

The command completed successfully

LSNRCTL> services

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

Services Summary...

Service "+ASM" has 1 instance(s).

Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

Service "+ASM_XPT" has 1 instance(s).

Instance "+ASM2", status BLOCKED, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

Service "PLSExtProc" has 1 instance(s).

Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0

LOCAL SERVER

Service "XXXXXXXX" has 2 instance(s).

Instance "XXXXXX", status READY, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:16 refused:0 state:ready

REMOTE SERVER

(ADDRESS=(PROTOCOL=tcp)(HOST=XXXXXXXX)(PORT=1521))

Instance "XXXXXX", status READY, has 2 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

REMOTE SERVER

(ADDRESS=(PROTOCOL=tcp)(HOST=XXXXXX)(PORT=1521))

"DEDICATED" established:31 refused:0 state:ready

LOCAL SERVER

Service "XXXXXXXXX" has 2 instance(s).

Instance "XXXXXX", status READY, has 1 handler(s) for this service...

Handler(s):

"D000" established:0 refused:0 current:0 max:972 state:ready

DISPATCHER (ADDRESS=(PROTOCOL=tcp)(HOST=XXXXXX)(PORT=6661))

Instance "XXXXXX", status READY, has 1 handler(s) for this service...

Handler(s):

"D000" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER (ADDRESS=(PROTOCOL=tcp)(HOST=XXXXX)(PORT=51924))

Service "XXXXXXXX" has 2 instance(s).

Instance "XXXXXXX", status READY, has 1 handler(s) for this service...

Handler(s):

"DEDICATED" established:16 refused:0 state:ready

REMOTE SERVER

(ADDRESS=(PROTOCOL=tcp)(HOST=XXXXX)(PORT=1521))

Instance "XXXXXXX", status READY, has 2 handler(s) for this service...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

REMOTE SERVER

(ADDRESS=(PROTOCOL=tcp)(HOST=XXXXXXX)(PORT=1521))

"DEDICATED" established:31 refused:0 state:ready

LOCAL SERVER

The command completed successfully

LSNRCTL> show inbound_connect_timeout

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))

LISTENER parameter "inbound_connect_timeout" set to 60

The command completed successfully

4、修改之后观察一段时间系统恢复正常。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值