資料庫hang著時採取辦法

psufnxk2000發表於2011-10-25
找問題方法:

sqlplus -prelim "/as sysdba"    --能進入到資料庫,不能查詢資料字典

dump系統狀態:

SQL> oradebug setmypid                                             
Statement processed. 
SQL> oradebug unlimit 
Statement processed. 
SQL> oradebug dump systemstate 266 
Statement processed.

SQL>oradebug tracefile_name –這個命令我們獲得輸出檔案的絕對路徑和檔名
$tkprof /opt/oracle/app/oracle/admin/ora92/bdump/ora92_j000_344612.trc tracepid.txt   --格式化檔案
$more tracepid.txt    



dump hanganalyze :

SQL> oradebug  hanganalyze 3  --如果有hang著,下面這個檔案是直接給出來的,再分析一下檔案即可???
Hang Analysis in /oracle/app/oracle/admin/ora10g/udump/ora10g_ora_52642.trc


對於rac :

SQLPLUS> oradebug setmypid 

SQLPLUS>oradebug setinst all 

SQLPLUS>oradebug -g def hanganalyze 3



dump 程式狀態:
SQL> oradebug dump processstate 10 
Statement processed.


指定process在做什麼:
SQL>oradebug setospid 344612   --pid號
SQL>oradebug event 10046 trace name context forever, level 8
SQL>oradebug tracefile_name –這個命令我們獲得輸出檔案的絕對路徑和檔名
SQL>oradebug event 10046 trace name context off


解決問題方法:
找到process的連線,然後kill掉。 就能臨時解決。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25099483/viewspace-709646/,如需轉載,請註明出處,否則將追究法律責任。

相關文章