Backup And Recovery User's Guide-執行完全資料庫恢復-執行關閉的資料庫的恢復
執行關閉的資料庫的恢復
這部分描述了在資料庫沒有開啟的情況執行完全恢復。
可以在一個操作中恢復所有損壞的資料檔案,也可以在單獨的操作中,執行每個損壞的資料檔案的個別的恢復。
練習:還原和恢復損壞的或丟失的資料檔案
--1. 如果資料庫是OPEN狀態,查詢V$RECOVER_FILE來確定哪一個資料檔案必須被恢復和為什麼被恢復。 -- 如果你計劃執行完全恢復而不是時間點恢復,則可以只恢復需要恢復的資料檔案,而不是整個資料庫。 -- 對於時間點恢復,必須還原和恢復所有的資料檔案,除非執行的是TSPITR。 -- 也可以使用閃回資料庫,但閃回資料庫也是影響所有的資料檔案並回退整個資料庫到過去的時間點。 -- 可以查詢V$RECOVER_FILE檢視,列出需要恢復的資料檔案的編號、狀態和錯誤資訊 SELECT FILE#, ERROR, ONLINE_STATUS, CHANGE#, TIME FROM V$RECOVER_FILE;
--注意:你不能在介質失敗影響到了資料檔案之後,在控制檔案是被還原的或重新建立的情況下, 使用V$RECOVER_FILE. -- 因為被還原的或重新建立的控制檔案不包含更新V$RECOVER_FILE檢視所需要的準確的資訊。
-- 也可以對V$DATAFILE和V$TABLESPACE檢視通過檔案編號進行連線操作,來檢視資料檔案和表空間的名稱。 -- ERROR列列出了每個需要恢復的資料檔案的問題。 COL DF# FORMAT 999 COL DF_NAME FORMAT A35 COL TBSP_NAME FORMAT A7 COL STATUS FORMAT A7 COL ERROR FORMAT A10 COL CHANGE# FORMAT 99999999 SELECT r.FILE# AS df#, d.NAME AS df_name, t.NAME AS tbsp_name, d.STATUS, r.ERROR, r.CHANGE#, r.TIME FROM V$RECOVER_FILE r, V$DATAFILE d, V$TABLESPACE t WHERE t.TS# = d.TS# AND d.FILE# = r.FILE#;
--2. 查詢V$ARCHIVED_LOG和V$RECOVERY_LOG檢視,確定哪些歸檔重做日誌檔案是需要的。 -- V$ARCHIVED_LOG列出所有的歸檔重做日誌的檔名,而V$RECOVERY_LOG只列出資料庫執行介質恢復所需要的歸檔重做日誌。 -- V$RECOVERY_LOG也包含可能的檔案的名稱,這個名稱基於通過LOG_ARCHIVE_FORMAT引數指定的命名的慣例。 -- 注意:V$RECOVERY_LOG只有在資料檔案需要介質恢復的時候才被填充. 因此這個檢視對於計劃的恢復是沒用的,例如從使用者錯誤的恢復. -- 如果資料檔案需要恢復,但資料檔案的備份不存在,則你需要從資料檔案被新增到資料庫開始後產生的所有redo資訊。
--3. 如果所有的歸檔日誌在預設的位置可用,則跳轉到第4步 -- 如果一些歸檔日誌必須被還原並且有足夠的空間可以被使用,則還原需要的歸檔重做日誌檔案到LOG_ARCHIVE_DEST_1引數指定的位置 -- 當在介質恢復的過程中資料庫會自動定位正確的日誌檔案. -- 如果沒有足夠的空間則可以還原部分或所有的歸檔重做日誌檔案到其它的位置. cp /disk2/arch/* $ORACLE_HOME/oradata/trgt/arch
--4. 如果資料庫處於開啟狀態,則關閉資料庫 SHUTDOWN IMMEDIATE --5. 檢查介質確定問題的來源.如果引起介質失敗的硬體問題是暫時的並且如果資料並沒有損壞(如磁碟或控制器電源失敗),則不需要介質恢復 -- 開啟資料庫,恢復正常的操作. 如果不能修復問題,則繼續第6步 --6. 如果資料檔案永久地損壞了,則找到損壞的檔案的最近的備份,只還原被介質失敗損壞的資料檔案.不要還原未損壞的資料檔案或聯機重做日誌. -- 例如ORACLE_HOME/oradata/trgt/users01.dbf是唯一損壞的資料檔案,並且找到/backup/users01_10_24_02.dbf是該檔案最近的備份 --7. 使用作業系統工具來還原資料檔案到預設的位置 cp /backup/users01_10_24_06.dbf $ORACLE_HOME/oradata/trgt/users01.dbf -- 使用下面的指導來確定將資料檔案恢復到哪裡 -- a. 如果硬體問題被修復了,則可以還原資料檔案到預設的位置,然後還原歸檔重做日誌到預設的位置並開始恢復。 -- b. 如果硬體問題仍然存在,就不以還原資料檔案到原始的位置,則需要還原資料檔案到一個替代的儲存裝置, -- 使用ALTER DATABASE RENAME FILE通知控制檔案這些檔案新位置. -- c. 如果還原資料檔案到裸裝置或分割槽,則使用的技術與還原檔案到檔案系統是類似的。 -- 要清楚檔案在裸裝置上的命名的慣例並使用支援裸裝置的作業系統工具 --8. 使用管理員許可權連線到資料庫,然後MOUNT資料庫但不OPEN STARTUP MOUNT --9. 如果還原一個或多個資料檔案到替代的位置,然後更新控制檔案來反映新的資料檔案的名稱. ALTER DATABASE RENAME FILE '?/oradata/trgt/users01.dbf' TO '/disk2/users01.dbf'; --10. 獲得所有資料檔案的名稱和狀態,這些檔案通常和控制檔案在一起,也可以查詢V$DATAFILE檢視 SELECT NAME,STATUS FROM V$DATAFILE; --11. 確定所有需要恢復的資料檔案聯機. 唯一的例外是被正常離線的表空間中的資料檔案或只讀表空間中的資料檔案. ALTER DATABASE DATAFILE '/oracle/dbs/tbs_10.f' ONLINE; -- 如果指定的資料檔案已經聯機,則資料庫會忽略這個語句. 如果希望建立一個指令碼來使所有的一次全部聯機 SPOOL onlineall.sql SELECT 'ALTER DATABASE DATAFILE '''||name||''' ONLINE;' FROM V$DATAFILE; SPOOL OFF
SQL> @onlineall --12. 如果還原歸檔日誌檔案到替代的位置,則可以在介質恢復之前使用SET LOGSOURCE命令指定新的位置 -- 也可以跳過該步,在RECOVER命令中直接指定位置. 注意:覆蓋redo log source不會影響到正在被歸檔的聯機重做日誌組的歸檔重做日誌目的地。
SET LOGSOURCE /tmp --13. 恢復資料庫、表空間、資料檔案 --13.1 整個資料庫 RECOVER AUTOMATIC DATABASE --13.2 恢復指定的表空間 RECOVER AUTOMATIC TABLESPACE users --13.3 恢復指定的資料檔案 RECOVER AUTOMATIC DATAFILE '?/oradata/trgt/users01.dbf'; -- 如果沒有選擇自動應用歸檔重做日誌,則必須接受或拒絕每一個提示的日誌.如果進行自動恢復,則資料庫會自動地應用日誌. -- 恢復繼續進行,只到所有需要歸檔日誌和聯機重做日誌已經被應用到被還原的資料檔案.當介質恢復結束後,資料庫會給出通知. Media recovery complete. --如果不需要歸檔重做日誌來完成介質恢復,則資料會應用所有必要的聯機重做日誌檔案並且結束恢復. --14. 恢復結束之後,開啟資料庫 ALTER DATABASE OPEN; --15. 在歸檔日誌被應用並確定每個歸檔日誌檔案在離線的儲存上仍然存在後,就可以刪除還原的歸檔日誌檔案的備份來釋放空間了. $ rm /tmp/*.arc |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1101151/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Backup And Recovery User's Guide-執行完全資料庫恢復-關於完全資料庫恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復-執行整個資料庫的完全恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復-執行開啟的資料庫的恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復-執行表空間的完全恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行不完全資料庫恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行不完全資料庫恢復-執行Cancel-Based不完全恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復-切換到資料庫拷貝GUIIDE資料庫
- Backup And Recovery User's Guide-執行資料庫時間點恢復GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復-還原資料檔案到非預設的位置GUIIDE資料庫
- Backup And Recovery User's Guide-為完全資料庫恢復做準備GUIIDE資料庫
- Backup And Recovery User's Guide-恢復資料庫到祖先incarnationGUIIDE資料庫
- Backup And Recovery User's Guide-為完全資料庫恢復做準備-確定資料庫的DBIDGUIIDE資料庫
- Backup And Recovery User's Guide-執行使用者管理的資料庫閃回和恢復GUIIDE資料庫
- Backup And Recovery User's Guide-恢復的取消(並行介質恢復)GUIIDE並行
- Backup And Recovery User's Guide-恢復處於非歸檔模式的資料庫GUIIDE模式資料庫
- Backup And Recovery User's Guide-介質恢復問題解決-執行試驗恢復GUIIDE
- Backup And Recovery User's Guide-從RMAN開始-恢復整個資料庫GUIIDE資料庫
- 恢復之資料庫關閉時的完全恢復資料庫
- Backup And Recovery User's Guide-閃回和資料庫時間點恢復的目的GUIIDE資料庫
- Backup And Recovery User's Guide-在切換到一個拷貝之後執行完全恢復GUIIDE
- Backup And Recovery User's Guide-閃回和資料庫時間點恢復場景GUIIDE資料庫
- Backup And Recovery User's Guide-執行RMAN表空間時間點恢復(TSPIRT)GUIIDE
- Backup And Recovery User's Guide-閃回和資料庫時間點恢復的基本概念GUIIDE資料庫
- Backup And Recovery User's Guide-執行基於時間的或基於改變的不完全恢復GUIIDE
- Backup And Recovery User's Guide-使用閃回資料庫來回退資料庫-執行閃回資料庫操作GUIIDE資料庫
- Backup And Recovery User's Guide-從RMAN開始-還原和恢復資料庫檔案GUIIDE資料庫
- Backup And Recovery User's Guide-從RMAN開始-恢復單個的資料塊GUIIDE
- Backup And Recovery User's Guide-備份和恢復介紹-資料恢復指導(advisor)GUIIDE資料恢復
- Backup And Recovery User's Guide-備份和恢復介紹-備份和恢復的目的-資料傳輸GUIIDE
- Backup And Recovery User's Guide-備份和恢復介紹-備份和恢復的目的-資料儲存GUIIDE
- Backup And Recovery User's Guide-備份和恢復介紹-備份和恢復的目的-資料保護GUIIDE
- Backup And Recovery User's Guide-使用SET AUTORECOVERY進行自動恢復GUIIDE
- 基於時間執行資料庫不完全恢復資料庫
- Backup And Recovery User's Guide-介質恢復問題解決-執行RECOVER…TEST語句GUIIDE
- (Les16 執行資料庫恢復)-表空間恢復資料庫
- 【北亞資料恢復】oracle資料庫執行truncate table命令怎麼恢復資料?資料恢復Oracle資料庫
- Backup And Recovery User's Guide-使用RECOVER命令的自動恢復GUIIDE