Fatal NI connect error 12170

Fatal NI connect error 12170



轉載:http://www.xifenfei.com/1812.html
今天在一臺服務器的日誌文件中,發現以下信息:
Fatal NI connect error 12170.
 
   VERSION INFORMATION:
     TNS for Linux: Version 11.1.0.7.0 - Production
     Unix Domain Socket IPC NT Protocol Adaptor for Linux: Version 11.1.0.7.0 - Production
     Oracle Bequeath NT Protocol Adapter for Linux: Version 11.1.0.7.0 - Production
     TCP /IP NT Protocol Adapter for Linux: 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))

查看mos,有幸發現關於該錯誤的相關文章
Fatal NI connect error 12170′, ‘TNS-12535: TNS:operation timed out’ Reported in 11g Alert Log [ID 1286376.1]
作了一些摘要,算是給本身作個記錄,也給不能訪問mos的朋友一個參考html

一、適用範圍sql

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 in this document applies to any platform.

二、問題緣由數據庫

These time out related messages are mostly informational in nature.  The messages indicate the specified client connection (identified by the 'Client address:' details) has experienced a time out.  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 for the 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 ( which translates 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.
 
The reason the messages are written to the alert log is related to the use of the new 11g Automatic Diagnostic Repository (ADR) feature being enabled by default.

三、解決問題bash

To revert to Oracle Net Server tracing /logging , set following parameter in the server's sqlnet.ora :
 
DIAG_ADR_ENABLED = OFF
 
Also, to back out the ADR diag for the Listener component, set following parameter in the server's listener.ora:
 
DIAG_ADR_ENABLED_<listenername> = OFF
 
    - Where the <listenername> would be replaced with the actual name of the configured listener(s) in the listener.ora configuration file .  For example, if the listener name is 'LISTENER' , the parameter would read :
 
DIAG_ADR_ENABLED_LISTENER = OFF
 
-Reload or restart the TNS Listener for the parameter change to take effect.

說明:這個問題是因爲Automatic Diagnostic Repository中的 Oracle Net diagnostic在默認的狀況下是開啓的,當數據庫和客戶端的鏈接超過特定時間,就會把這樣的信息寫入到alert日誌中,因此這不是一個致命的問題,若是偶爾出現,能夠忽略有點類此ora-3136的錯誤服務器



相關文章
相關標籤/搜索