首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 資料庫緊急故障處理實戰手冊 (三):表空間與資料檔損壞恢復

     編輯:Oracle 資料庫基礎

System 表空間資料檔損壞

  1. STARTUP MOUNT
  2. 從備份恢復該資料檔 (磁帶或 RMAN)。
  3. ALTER DATABASE RECOVER DATAFILE 'filename';
  4. ALTER DATABASE OPEN;
  5. 全庫備份。

非 System 表空間損壞 (資料庫可開啟)

  1. ALTER TABLESPACE ts_name OFFLINE;
  2. 恢復表空間備份。
  3. ALTER DATABASE RECOVER TABLESPACE ts_name;
  4. ALTER TABLESPACE ts_name ONLINE;
  5. 全庫備份。

System 表空間損壞 (資料庫異常終止)

  1. STARTUP MOUNT
  2. 恢復 System 表空間備份。
  3. ALTER DATABASE RECOVER TABLESPACE SYSTEM;
  4. ALTER DATABASE OPEN;
  5. 全庫備份。

全庫所有檔案損壞

無帶庫備份

  1. 從磁帶解包所有檔案至對應目錄。
  2. STARTUP MOUNT
  3. RECOVER DATABASE UNTIL CANCEL;
  4. ALTER DATABASE OPEN RESETLOGS;
  5. 全庫備份。

有帶庫備份 (RMAN)

  1. STARTUP NOMOUNT
  2. RMAN> RUN { RESTORE CONTROLFILE; RESTORE DATABASE; RECOVER DATABASE; } (或執行腳本)
  3. ALTER DATABASE OPEN RESETLOGS;
  4. 全庫備份。

存在最近完整冷備份前提下的經典情況

Datafile + Archive Log + Controlfile 全損 (無新 Archive)

  1. 複製冷備份 Datafile/Controlfile 回原位。
  2. STARTUP MOUNT
  3. RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL; (立即 CANCEL)
  4. ALTER DATABASE OPEN RESETLOGS;
  5. 關庫做冷備份。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved