一次資料庫崩潰處理事件

jackson198574發表於2013-12-13

    
  13號早上接到領導通知,說某下屬單位資料庫崩潰,給處理一下。聯絡到相關負責人,瞭解了一些情況,跟同事一步一步的,邊商量,邊互相監督著進行拯救操作,監督不是因為有信任問題,是擔心對方操作過程中有疏漏。畢竟在急救過程中的處理心態跟平時自己做實驗時的悠閒自得的心態是不同的,這一刻真的是鴨梨山大!誰的命令敲錯了,誰的心態不穩了,都可能導致資料庫的狀態往更差的方向發展!


   這個專案是找的我處理,領導也是安排給我處理的,但同事小秋秋一直跟我加班加點奮鬥了好多天,很幸運碰到這種能擔當的同伴,他不會打太極,也不會踢皮球,讓人覺得值得信任。

   最終資料庫恢復了,不過處理過程中走了很多的彎路,比如控制檔案損壞應該是先從備份集裡恢復控制檔案,而不是透過轉儲重新建立控制檔案。當時由於情況緊急,之前確實沒碰到過這種狀況,處理思路有些混亂,下次碰到資料庫崩潰造成控制檔案和資料檔案損失的情況下,一定首先從備份集裡恢復控制檔案,找到所有以前的備份集,透過備份集恢復控制檔案,找到所有備份集資訊,從備份集裡恢復丟失的資料檔案。
   
    控制檔案損壞以後資料庫打不開,而且rman裡面list backup命令找不到任何的備份集,這時候指定備份集恢復就可以:restore control file from '備份集'; 

    透過這次專案,學到了兩點:
    1.認真打好理論基礎。一定分析好故障原因,自習檢查資料庫狀態,儘可能確定資料庫哪些資源可用,哪些資源不可用,具體透過什麼方式用,再去進行處理,寧願處理的慢一些,也不能因為各種緊急的催促盲目的進行沒經過深思熟慮的操作,畢竟生產環境崩潰就跟病人瀕臨死亡的性質是差不多的,大夫不能因為思維錯誤錯手殺死病人。

    2.一定要保證心態冷靜,任何操作之前跟同事討論可行性,如果自己單槍匹馬的處理的話,一定深思熟慮之後再動手,寧願讓他 dying 也不能讓他 died !!!
 
    之後自己重新模擬當時的故障場景做了一次模擬故障恢復測試報告。

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

相關文章