本文主要是介绍Oracle11.2.0.3 ORA-3136 连接超时错误解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.问题现象alert日志文件报如下错误
WARNING: inbound connection timed out (ORA-3136)
Mon Oct 20 14:33:52 2008
WARNING: inbound connection timed out (ORA-3136)
Mon Oct 20 14:34:46 2008
WARNING: inbound connection timed out (ORA-3136)
sqlnet.log中记录了如下错误:
Fatal NI connect error 12170.
VERSION INFORMATION:
TNS for Linux: Version 11.2.0.3.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.3.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.3.0 - Production
Time: 20-OCT-2008 14:34:46
Tracing not turned on.
Tns error struct:
ns main err code: 12535
TNS-12535: TNS:operation timed out
ns secondary err code: 12606
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0
Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.123.103)(PORT=3124))
2.Metalink上给出了如下的解决方案
1)set INBOUND_CONNECT_TIMEOUT_<listenername>=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
如果不重启只是进行reload也可以修改成功
通过如下方式验证是否修改成功
LSNRCTL> show inbound_connect_timeout
修改listener的inbound_connect_timeout参数的方法
方法一:
$ lsnrctl
LSNRCTL for IBM/AIX RISC System/6000: Version 11.2.0.3.0 - Production on 29-OCT-2007 10:00:57
Copyright (c) 1991, 2006, Oracle. All rights reserved.
Welcome to LSNRCTL, type "help" for information.
LSNRCTL> help
The following operations are available
An asterisk (*) denotes a modifier or extended command:
start stop status
services version reload
save_config trace spawn
change_password quit exit
set* show*
LSNRCTL> show
The following operations are available after show
An asterisk (*) denotes a modifier or extended command:
rawmode displaymode
rules trc_file
trc_directory trc_level
log_file log_directory
log_status current_listener
inbound_connect_timeout startup_waittime
snmp_visible save_config_on_stop
dynamic_registration
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
LSNRCTL> set inbound_connect_timeout 0
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
LISTENER parameter "inbound_connect_timeout" set to 0
The command completed successfully
LSNRCTL> show inbound_connect_timeout
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
LISTENER parameter "inbound_connect_timeout" set to 0
The command completed successfully
LSNRCTL> set save_config_on_stop on #表示修改参数永久生效,否则只是临时生效,下次重启监听又还原为原来的值了
LSNRCTL> exit
方法二:
修改listener.ora文件,加入: INBOUND_CONNECT_TIMEOUT_LISTENER_NAME=0
这篇关于Oracle11.2.0.3 ORA-3136 连接超时错误解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!