您在此處:還原保護資料 > 如何還原 Oracle 資料庫 > 還原整個資料庫 (表格區和控制檔)

還原整個資料庫 (表格區和控制檔)

您可以還原整個資料庫 (所有表格區和控制檔)。還原之前,您必須先找到檔案。找到檔案時,請確定資料庫處於已開啟狀態。如果資料庫處於已開啟狀態,請使用 ALTER TABLESPACE. OFFLINE 陳述式可先將表格區或資料檔案設為離線狀態,再開始還原程序。

請採取以下步驟:

  1. 登入您要還原表格區或資料檔案的電腦。
  2. 使用下列命令尋找使用者表格區或資料檔案:
  3. SQL> SELECT TABLESPACE_NAME, FILE_NAME from DBA_DATA_FILES;

    SQL> SHOW PARAMETER CONTROL FILES;

  4. 在您還原表格區或資料檔案之前,請先將資料庫的狀態變更為未裝載或關閉。
  5. SQL> STARTUP NOMOUNT;

    SQL>shutdown immediate;

  6. 登入 Arcserve UDP 主控台。
  7. 使用還原精靈將表格區或資料檔案還原。如需還原程序的詳細資訊,請參閱〈如何從復原點還原〉。
  8. 登入目標電腦。
  9. 瀏覽至特定資料夾,並驗證表格區或資料檔案已還原。
  10. 復原資料庫。
  11. SQL> RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL;

  12. 套用提示的封存日誌。
  13. 附註:如果所需的封存日誌遺失,表示必要的重做記錄位在線上重做日誌中。因為執行個體失敗時,未封存的變更會位於線上日誌中,此狀況便會發生。您可以指定線上重做日誌檔的完整路徑,然後按下 Enter (您可能必須嘗試幾次,直到找到正確日誌為止)。
  14. 輸入下列命令,以傳回資料庫重做日誌的相關控制檔資訊:
  15. SQL>SELECT * FROM V$LOG;

  16. (選用) 輸入下列命令,以查看群組所有成員的名稱:
  17. SQL>SELECT * FROM V$LOGFILE;

  18. 範例:在套用提示的封存日誌後,您可能會看到下列訊息:
  19. ORA-00279: change 55636 generated at 24/06/2014 16:59:47 needed for thread 1

    ORA-00289: suggestion e:\app\Administrator\flash_recovery_area\orcl\ARCHIVELOG\2014_06_24\ O1_MF_1_2_9TKXGGG2_.ARC

    ORA-00280: change 55636 for thread 1 is in sequence #24

    Specify log: {<RET>=suggested | filename | AUTO | CANCEL}

  20. 指定線上重做日誌檔的完整路徑,然後按下 Enter。
  21. 範例:E:\app\Administrator\oradata\orcl\redo01.log
  22. 附註:您必須多次指定完整路徑,直到您取得正確日誌為止。
  23. 隨即顯示下列訊息:
  24. 日誌已套用

    媒體復原完成

  25. 在完成復原程序後,使用 RESETLOGS 子句開啟資料庫。
  26. SQL> ALTER DATABASE OPEN RESETLOGS;

  27. 附註:對於多租用戶資料庫 (CDB/PDB),也必須開啟所有隨插即用資料庫。
  28. SQL> ALTER PLUGGABLE DATABASE <PDB_NAME> OPEN;

    整個資料庫已還原。

  29. 針對多租用戶資料庫執行步驟 1 到 13 之後,將 Oracle 伺服器重新開機。
  30. 附註:對於只在獨立資料庫中執行的伺服器,不需要此步驟。


Copyright © 2014-2021, Arcserve. All rights reserved.

評分此頁面
此頁面上的內容對我很有用。 非常不同意 非常同意
提交此頁面的評分與選擇性註解