天天看點

TNS-12537: TNS:connection closed ORA-609錯誤處理

日志報警:

$ORACLE_BASE/diag/rdbms/jrdb/trace/alert_jrdb.log

出現這個報警的時間點正好是在12:06-12:18這段時間内,IDC生産環境,網絡出現故障,造成域名解析發生錯誤.

***********************************************************************

Fatal NI connect error 12537, connecting to:

(LOCAL=NO)

VERSION INFORMATION:

TNS for Linux: Version 11.2.0.1.0 - Production

Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.1.0 - Production

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

Time: 03-NOV-2011 12:17:26

Tracing not turned on.

Tns error struct:

ns main err code: 12537

TNS-12537: TNS:connection closed

ns secondary err code: 12560

nt main err code: 0

nt secondary err code: 0

nt OS err code: 0

opiodr aborting process unknown ospid (3132) as a result of ORA-609

Thu Nov 03 12:17:36 2011

檢查 listener 日志确認沒有異常,在部分機器 TNSPING XXX 60 等進行嘗試結果正常,無連結問題

明顯感覺,隻要第一次 tnsping 連結正常,之後的 jdbc 連結就正常;如果第一次不正常,之後的 jdbc 連結就容易傳回逾時的錯誤。

嘗試重新開機 lsnrctl stop/start 和重新加載配置檔案 lsnrctl reload 重新注冊資料庫執行個體,仍然無法解決逾時錯誤。

tnsping xxxx N 的時候明顯觀察到:

OK (56730 msec)

OK (80 msec)

OK (70 msec)

OK (60 msec)

OK (47820 msec)

....

同時 PING IP 的結果并沒有出現延時,機器之前并未設定防火牆等,可以排除網絡和防火牆問題。

在連續 TNSPING 的情況下,出現明顯連結延時,懷疑是監聽器的問題。

解決辦法:

注釋掉 /etc/resolve.conf 配置檔案中對 DNS 的解析解決

[oracle@vcdog log]$ cat /etc/resolv.conf 

#nameserver 202.106.0.20

     本文轉自vcdog 51CTO部落格,原文連結:http://blog.51cto.com/255361/837494,如需轉載請自行聯系原作者