程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> oracle 11g不能連接報ORA-12537+ora-609解決,ora-12537ora-609

oracle 11g不能連接報ORA-12537+ora-609解決,ora-12537ora-609

編輯:Oracle教程

oracle 11g不能連接報ORA-12537+ora-609解決,ora-12537ora-609


操作系統: windows2008

數據庫:oracle11g

問題發生:一套正常跑了一年的應用系統,忽然無法連接上數據庫,但是另外一個應用可以正常鏈接,數據入庫正常。

 

數據庫服務器端查看:

使用 lsnrctl status 查看監聽狀態卡住,10分鐘左右結果才會反饋。

plsql無法連接。

重啟監聽問題依舊。

alter日志文件中報錯:

Fatal NI connect error 12537, connecting to:
(LOCAL=NO)

VERSION INFORMATION:
TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 11.2.0.1.0 - Production
Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 11.2.0.1.0 - Production
Time: 17-6月 -2015 09:17:49
Tracing not turned on.
Tns error struct:
ns main err code: 12537

TNS-12537: TNS: 連接關閉
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 (6052) as a result of ORA-609

 

使用dos端sqlplus登錄正常,查有最新數據入庫。懷疑是監聽問題!

 

查看監聽log文件   $ORACLE_HOME/network/log  報錯如下

<msg time='2015-06-16T02:14:18.877+08:00' org_id='oracle' comp_id='tnslsnr'
type='UNKNOWN' level='16' host_id='WINDOWS-35NMUNE'
host_addr='fe80::7840:6685:828f:4f5a%17'>
<txt>TNS-12560: TNS: 協議適配器錯誤
TNS-00530: 協議適配器錯誤
64-bit Windows Error: 53: Unknown error
TNS-12518: TNS: 監聽程序無法分發客戶機連接
TNS-12571: TNS: 包寫入程序失敗
TNS-12560: TNS: 協議適配器錯誤
TNS-00530: 協議適配器錯誤
64-bit Windows Error: 54: Unknown error
</txt>
</msg>

報錯 ora-12518 監聽無法分發客戶端連接。 但在oracle中使用 show parameter session 與select count(×) from v$session; 對比發現不是連接數限制問題。

使用tnsping IP 沒有反應。

 

後繼續查看listener的log文件 $ORACLE_HOME/network/trace  發現listener.log 文件已經達到4G  無法再繼續寫入,最後寫入日期也在前兩天,於是刪除該log文件,啟動監聽,正常~!!

 

最終原因發現是log文件寫滿,看來以後要定期清理這個文件了。這麼小一個問題都使應用系統無法連接上,細節決定成敗。 此類文件要見一個記錄一個 同時在同類系統中排查。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved