上一個主題: 復原完整資料庫下一個主題: 復原表格區或資料檔案


復原完整資料庫和控制檔案

如果控制檔案遺失或毀損,您必須先關閉資料庫並復原控制檔案,之後才能復原資料庫。

關閉資料庫和復原控制檔案

  1. 在 SQL*Plus 提示中輸入下列指令,將資料庫關閉:
    SHUTDOWN;
    
  2. 移到 Oracle 主目錄。 將控制檔案從代理程式主目錄複製到原始位置。
  3. 重新命名還原的控制檔案,成為原始的控制檔案名稱。

    附註:還原程序會還原原始的控制檔案。 您必須將控制檔案的還原版本重新命名成原始檔名。

  4. 啟動並裝載資料庫,並開始復原程序:

    在 SQL*Plus 提示中輸入:

    CONNECT SYS/SYS_PASSWORD AS SYSDBA;
    STARTUP MOUNT;
    RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;
    
  5. Oracle 會提示您輸入日誌檔名。 Oracle 先尋找封存日誌檔,並自動為存在的封存日誌檔提供正確名稱。 如果 Oracle 找不到需要的封存日誌檔,您必須手動提供 Oracle 需要的線上重做日誌。

    手動提供線上重做日誌時,您必須提供完整路徑和檔案名稱。 如果輸入錯誤的日誌,請重新輸入指令:

    RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;
    

    在提示下輸入正確的線上重做日誌檔。 繼續此程序,直到 Oracle 成功套用所有日誌為止。

  6. 在 SQL*Plus 提示中輸入下列指令,讓資料庫恢復為線上狀態並重設日誌:
    ALTER DATABASE OPEN RESETLOGS; 
    
  7. 在存放封存重做日誌的目錄中,刪除所有日誌檔。
  8. 若有任何表格區仍處於離線狀態,請在 SQL*Plus 提示中輸入下列指令,使其恢復為線上狀態:
    ALTER TABLESPACE TABLESPACE_NAME ONLINE;