Oracle 監聽異常處理
作業系統: windows2008
資料庫:oracle11g
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
問題發生:一套正常跑了一年的應用系統,忽然無法連線上資料庫
資料庫伺服器端檢視:
使用 lsnrctl status 檢視監聽狀態卡住,10分鐘左右結果才會反饋。
plsql無法連線。
重啟監聽問題依舊。
alter日誌檔案中報錯:
<msg time='2020-02-24T18:13:09.309+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt>
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
</txt>
</msg>
<msg time='2020-02-24T18:13:09.309+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt> Time: 24-2月 -2020 18:13:09
</txt>
</msg>
<msg time='2020-02-24T18:13:59.981+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt>TNS-12547: TNS: 丟失連線
</txt>
</msg>
<msg time='2020-02-24T18:13:59.981+08:00' org_id='oracle' comp_id='rdbms'
<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>
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt> ns secondary err code: 12560
</txt>
</msg>
<msg time='2020-02-24T18:13:59.981+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt> nt main err code: 0
</txt>
</msg>
<msg time='2020-02-24T18:13:59.981+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt> nt secondary err code: 0
</txt>
</msg>
<msg time='2020-02-24T18:13:59.981+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18'>
<txt> nt OS err code: 0
</txt>
</msg>
<msg time='2020-02-24T18:13:59.997+08:00' org_id='oracle' comp_id='rdbms'
type='UNKNOWN' level='16' host_id='WIN-N5BE4BP9FQS'
host_addr='fe80::6925:8e87:23e0:9a12%18' pid='39472'>
<txt>opiodr aborting process unknown ospid (39472) as a result of ORA-609
</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檔案,重新啟動監聽,正常。
關閉監聽
lsnrctl stop
到 listener.log 所在目錄
用命令列清空listener.log
echo > listener.log
lsnrctl reload
最終原因發現是log檔案寫滿,看來以後要定期清理這個檔案了。這麼小一個問題都使應用系統無法連線上,細節決定成敗。 此類檔案要見一個記錄一個 同時在同類系統中排查。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23141985/viewspace-2677076/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle異常處理Oracle
- Oracle異常錯誤處理Oracle
- ORACLE 異常錯誤處理Oracle
- oracle常見異常等待——latch處理思路Oracle
- spring boot 實現監聽器、過濾器、全域性異常處理Spring Boot過濾器
- Oracle開發基礎-異常處理Oracle
- 異常篇——異常處理
- oracle分散式事務異常處理方法Oracle分散式
- 異常處理
- JSP 異常處理如何處理?JS
- 異常-throws的方式處理異常
- React 異常處理React
- JS異常處理JS
- Python——異常處理Python
- Python異常處理Python
- ThinkPHP 異常處理PHP
- JavaScript 異常處理JavaScript
- JAVA 異常處理Java
- 異常的處理
- golang - 異常處理Golang
- 異常處理2
- 異常處理1
- Java 異常處理Java
- Abp 異常處理
- JAVA異常處理Java
- 08、異常處理
- SpringMVC異常處理SpringMVC
- Oracle Linux 6.7中 Oracle 11.2.0.4 RAC叢集CRS異常處理OracleLinux
- 異常處理機制(二)之異常處理與捕獲
- shell埠監聽異常郵箱告警
- Java 異常表與異常處理原理Java
- restframework 異常處理及自定義異常RESTFramework
- springboot下新增全域性異常處理和自定義異常處理Spring Boot
- NodeJS之異常處理NodeJS
- JAVA_異常處理Java
- React Native 異常處理React Native
- Spring Boot 異常處理Spring Boot
- PHP 核心 - 異常處理PHP