一次資料庫hang的處理
sqlplus -prelim "/as sysdba"
oradebug setmypid
oradebug unlimit
oradebug hanganalyze 3
--90 sec
oradebug hanganalyze 3
exit
sqlplus -prelim "/as sysdba"
oradebug setmypid
oradebug unlimit
oradebug dump systemstate 10
--wait 90 seconds
oradebug dump systemstate 10
--wait 90 seconds
oradebug dump systemstate 10
exit
找到hanganalyze的trace檔案,有如下資訊:
Found 12 objects waiting for
<0/132/62418/0x77005770/3398/No Wait>
Open chains found:
Chain 1 :
<0/132/62418/0x77005770/3398/No Wait>
-- <0/34/35823/0x37008ec8/3587/latch: library cache>
Other chains found:
......
......
OS的3398程式是個可疑的程式,systemstate的trace檔案驗證了該程式造成了阻賽:
............
Location from where call was made: kglScanDependency:
Context saved from call: 4
waiting for 3d3f458e8 Child library cache level=5 child#=9
Location from where latch is held: kglic: child
Context saved from call: 4
state=busy, wlstate=free
waiters [orapid (seconds since: put on list, posted, alive check)]:
16 (643, 1275037904, 643)
22 (627, 1275037904, 627)
26 (613, 1275037904, 613)
56 (574, 1275037904, 574)
30 (480, 1275037904, 480)
44 (423, 1275037904, 423)
17 (420, 1275037904, 420)
37 (408, 1275037904, 408)
52 (381, 1275037904, 381)
39 (351, 1275037904, 351)
59 (345, 1275037904, 286)
40 (318, 1275037904, 318)
80 (258, 1275037904, 258)
72 (237, 1275037904, 237)
14 (123, 1275037904, 123)
62 (84, 1275037904, 84)
13 (48, 1275037904, 48)
42 (19, 1275037904, 19)
waiter count=18
gotten 3142055352 times wait, failed first 786017316 sleeps 3103952
gotten 449701 times nowait, failed: 339338
possible holder pid = 36 ospid=3398
on wait list for 3d3f458e8
............
因為資料庫掛住了,要從資料庫裡面獲取該程式的詳細資訊,只能再做dump。
sqlplus -prelim "/as sysdba"
oradebug setospid 3398
oradebug unlimit
oradebug dump events 1
從這個trace裡發現該程式是I3檢測工具的一個會話,正在訪問v$sql_bind_capture檢視。I3是個效能監控的工具,其間也需要從各個檢視收集效能資訊。
後面處理的步驟略。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/207/viewspace-1034528/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 一次資料庫HANG處理資料庫
- 資料庫hang住,分析處理資料庫
- 記一次Oracle資料庫無響應(hang住)故障的處理Oracle資料庫
- 9i資料庫hang死分析處理資料庫
- 記一次資料庫hang住了資料庫
- 記一次:歸檔檔案系統問題導致資料庫hang處理資料庫
- 一次資料庫異常的處理過程資料庫
- ORACLE資料庫壞塊的處理 (一次壞快處理過程)Oracle資料庫
- 一次ORACLE資料庫undo壞塊處理Oracle資料庫
- 一次OWB資料庫效能問題處理資料庫
- 一次資料庫不能歸檔問題的處理資料庫
- 資料庫HANG著資料庫
- 【轉】 一次資料庫不能歸檔問題的處理資料庫
- 資料庫突然hang了資料庫
- 記一次 MySQL 資料庫單表恢復事故處理MySql資料庫
- 記一次資料庫高CPU佔用率處理過程資料庫
- 一次客戶資料庫CPU 100%處理過程資料庫
- 【Oracle】資料庫hang 診斷Oracle資料庫
- APM RUEI processor處理程式hang死處理方法
- 資料庫壞塊處理資料庫
- zabbix資料庫日常處理資料庫
- 誤刪資料庫資料檔案的處理方法資料庫
- 一次資料庫無法啟動問題的處理-ORA-00845資料庫
- 基於ORM思想的資料庫處理ORM資料庫
- informix資料庫頁故障的處理方法ORM資料庫
- 資料庫變慢的處理過程資料庫
- java處理資料庫date型別資料Java資料庫型別
- 資料庫如何處理大資料訪問資料庫大資料
- ORACLE資料庫壞塊的處理 (處理無物件壞快的方法)Oracle資料庫物件
- 一次資料庫崩潰處理事件資料庫事件
- 導數時資料庫hang住分析資料庫
- 資料庫異常hang住解決資料庫
- Polars提供Javascript的資料處理庫 - levelupJavaScript
- 資料庫壞塊Corrupt block的處理方法資料庫BloC
- 處理資料庫慢的一般方法資料庫
- 資料庫cpu高處理一則資料庫
- oradebug處理DB hang情況
- os thread startup等待事件HANG處理thread事件