链接:http://www.xifenfei.com/1812.html

标题:Fatal NI connect error 12170

作者:惜分飞©版权所有[文章允许转载,但必须以链接方式注明源地址,否则追究法律责任.]

 

Fatal NI connect error 12170
VERSION INFORMATION: 
TNS forLinux: Version 11.1.0.7.0 - Production 
Unix Domain Socket IPC NT Protocol Adaptor forLinux: Version 11.1.0.7.0 - Production 
Oracle Bequeath NT Protocol Adapter forLinux: Version 11.1.0.7.0 - Production 
TCP/IPNT Protocol Adapter forLinux: Version 11.1.0.7.0 - Production 
Time: 08-NOV-2011 13:57:10 
Tracing not turned on. 
Tns error struct: 
ns main err code: 12535 
TNS-12535: TNS:operation timed out 
ns secondary err code: 12560 
nt main err code: 505 
TNS-00505: Operation timed out 
nt secondary err code: 110 
nt OS err code: 0 
Client address: (ADDRESS=(PROTOCOL=tcp)(HOST=10.100.107.62)(PORT=52357))

1、适用范围

Oracle Net Services - Version: 11.1.0.6 to 11.2.0.2 - Release: 11.1 to 11.2 
Oracle Server - Enterprise Edition - Version: 11.1.0.6 to 11.2.0.2 [Release: 11.1 to 11.2] 
Information inthis document applies to any platform.

2、问题原因

These timeout related messages are mostly informational innature. The messages indicate the specified client connection (identified by the 'Client address:'details) has experienced a timeout. The 'nt secondary err code'identifies the underlying network transport, such as (TCP/IP) timeout limits after a client has abnormally terminated the database connection. 
The 'nt secondary err code'translates to underlying network transport timeouts forthe following Operating Systems: 
For the Solaris system: nt secondary err code: 145: 
#define ETIMEDOUT 145 /* Connection timed out */ 
For the Linux operating system: nt secondary err code: 110 
ETIMEDOUT 110 Connection timed out 
For the HP-UX system: nt secondary err code: 238: 
ETIMEDOUT 238 /* Connection timed out */ 
For Windows based platforms: nt secondary err code: 60 (whichtranslates to Winsock Error: 10060) 
Description: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. 

3、解决问题

To revert to Oracle Net Server tracing/loggingsetfollowing parameter inthe server's sqlnet.ora : 
DIAG_ADR_ENABLED = OFF 
Also, to back out the ADR diag forthe Listener component, setfollowing parameter inthe server's listener.ora: 
DIAG_ADR_ENABLED_<listenername> = OFF 
- Where the <listenername> would be replaced with the actual name of the configured listener(s) inthe listener.ora configuration file. For example, ifthe listener name is 'LISTENER', the parameter would read
DIAG_ADR_ENABLED_LISTENER = OFF 
 
1.在sqlnet.ora中加入内容:DIAG_ADR_ENABLED = OFF 
2.listener.ora 中加入内容:DIAG_ADR_ENABLED_<listenername> = OFF 
<listenername> 部分需要用实际环境的监听名字替代.默认:DIAG_ADR_ENABLED_LISTENER = OFF