oracle關閉資料庫時沒反應的處理案例

paulyibinyi發表於2011-04-27

上次給客戶維護一套資料庫時,需要關閉資料庫,做硬體相關維護,在關閉資料庫用

shutdown immediate時,長時間沒反應,一直停在那裡,以下是具體檢查過程:

 
  1:檢查oracle程式
           
     
     -ef|grep ora
  oracle 127192      1   0 19:13:41      -  0:09 ora_dbw6_oracle9i
  oracle 180422      1   0 19:13:41      -  0:08 ora_pmon_oracle9i
  oracle 225470 164648   0 10:26:12  pts/4  0:00 grep ora
  oracle  69902 221556   0 09:47:48  pts/0  0:00 -ksh
  oracle 213284      1   0 19:13:41      -  0:11 ora_dbw3_oracle9i
  oracle 152238      1   0 19:13:41      -  0:00 ora_arc0_oracle9i
  oracle 160492      1   0 19:13:41      -  0:31 ora_lgwr_oracle9i
  oracle 164556      1   0 19:13:41      -  1:28 ora_dbw0_oracle9i
  oracle 168472 136050   0 10:20:13  pts/2  0:00 -ksh
  oracle 180922      1   0 10:25:56      -  0:00 sleep 60
  oracle  50116      1   0 19:13:41      -  0:00 ora_reco_oracle9i
  oracle  74712      1   0 19:13:41      -  0:09 ora_dbw7_oracle9i
  oracle  91072      1   0 19:13:41      -  0:10 ora_dbw4_oracle9i
  oracle 119578      1   0 19:13:41      -  0:00 ora_arc1_oracle9i
  oracle 160710 164648   0 10:26:12  pts/4  0:00 ps -ef
  oracle 164648 103230   0 10:24:32  pts/4  0:00 -ksh
  oracle 103588      1   0 19:13:41      -  0:33 ora_dbw1_oracle9i
  oracle  71126 168472   0 10:21:42  pts/2  0:00 sqlplus
  oracle  75058      1   0 19:13:41      -  0:10 ora_ckpt_oracle9i
  oracle 136636      1   0 19:13:41      -  0:09 ora_dbw5_oracle9i
  oracle 189834  69902   0 10:22:10  pts/0  0:00 tail -f alert_oracle9i.log
  oracle 214688      1 120 22:59:56      - 671:22 ora_j000_oracle9i
  oracle  55054      1   0 19:13:41      -  0:16 ora_dbw2_oracle9i
  oracle  71548      1   0 19:13:41      -  0:01 ora_smon_oracle9i

   oracle 後臺程式全部在

 2. 檢查資料庫後臺日誌
   
  Sun Apr 24 10:21:51 2011
  Shutting down instance: further logons disabled
  Shutting down instance (immediate)
  License high water mark = 208
  Sun Apr 24 10:26:52 2011
  Active call for process 214688 user 'oracle' program (J000)'
  SHUTDOWN: waiting for active calls to complete.

  從上面日誌可以看出 shutdown 命令在等待J000後臺程式,完成相關操作。

 3.檢查J000程式
   ps -ef|grep j000
   oracle 214688      1 120 22:59:56      - 671:22 ora_j000_oracle9i
   是job程式,可以看出這個job執行10個多小時。


 4.殺調J000 job 程式

  kill -9 214688


 資料庫就很順利的關閉。

   總結:資料庫外部連線程式全部關閉後,如果資料庫關閉還沒反應,一般與job程式還在執行有關,
        
         關閉job程式即可。
   

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

相關文章