Backup And Recovery User's Guide-執行資料庫時間點恢復
執行資料庫時間點恢復
為了進行恢復,RMAN DBPITR還原在目標時間點之前的備份,然後使用增量備份或重做日誌前滾資料庫到目標時間點。
可以恢復到SCN、時間、日誌序號、還原點。Oracle建議在重要的時間點建立還原點來使基於時間點的恢復更易於管理。
Oracle建議在可能的情況下執行閃回資料庫而不是資料庫時間點恢復。
使用備份的介質恢復應該是閃回技術不能用於撤銷最近的改變時,最後的選擇。
資料庫時間點恢復的先決條件
資料庫必須執行在歸檔模式
必須具有來自於DBPIRT的目標SCN之前的所有資料檔案的備份,和在備份SCN和目標SCN之間的歸檔日誌。
執行資料庫時間點恢復
這部分描述DBPITR的基本步驟,這個過程假設如下:
n 在當前資料庫incarnation中執行DBPITR,如果目標時間點不在當前的incarnation中,則參考18.6.3“恢復資料庫到祖先incarnation”。
n 控制檔案是當前的。如果需要還原備份的控制檔案,則參考“使用備份控制檔案執行恢復”(在第20章)
n 資料庫正在使用當前的伺服器引數檔案。如果必須還原伺服器引數檔案,則參考“還原伺服器引數檔案”(第20章)
執行DBPITR,可以通過使用SET UNTIL命令在過程的開始設定目標時間,這樣可以避免錯誤。
而不是在RESTORE和RECOVER命令中單獨地使用UNTIL子句。
這可以確保從備份還原的資料檔案具有足夠早的時間戳,可以用於後序的RECOVER操作。
練習:執行DBPITR
--1. 確定結束恢復的時間、SCN、還原點、日誌序號. 可以使用閃回查詢功能來幫助你確定何時發生了邏輯損壞錯誤。 -- 如果對錶開啟了閃回資料歸檔,則可以查詢存在於過去的資料。 -- 也可以使用預警日誌來確定事件的時間,即從哪你必須恢復 -- 也可以使用SQL查詢來確定包含目標SCN的日誌序號,然後一直恢復到這個日誌。 -- 下面的查詢列出當前資料庫incarnation中的所有日誌 SELECT RECID, STAMP, THREAD#, SEQUENCE#, FIRST_CHANGE# FIRST_TIME, NEXT_CHANGE# FROM V$ARCHIVED_LOG WHERE RESETLOGS_CHANGE# = ( SELECT RESETLOGS_CHANGE# FROM V$DATABASE_INCARNATION WHERE STATUS = 'CURRENT');
RECID STAMP THREAD# SEQUENCE# FIRST_CHAN FIRST_TIM NEXT_CHANG ---------- ---------- ---------- ---------- ---------- --------- ---------- 1 344890611 1 1 20037 24-SEP-05 20043 2 344890615 1 2 20043 24-SEP-05 20045 3 344890618 1 3 20045 24-SEP-05 20046 -- 例,如果你發現使用者在9:02意外地刪除了一個表空間,則可以恢復到9:00,剛好在刪除之前,但會丟失這個時間之後的改變。 --2. 如果你正在使用目標時間表示式而不是SCN,則在呼叫RMAN之前要確定時間格式環境變數是正確的 NLS_LANG = american_america.us7ascii NLS_DATE_FORMAT="Mon DD YYYY HH24:MI:SS" --3. 連線RMAN到目標資料庫,使資料庫進入MOUNT狀態 SHUTDOWN IMMEDIATE; STARTUP MOUNT; --4. 在一個RUN塊中執行下列操作 -- a. 使用SET UNTIL指定目標時間、還原點、SCN或日誌序號。 如果指定一個時間則時間的格式為NLS_LANG和NLS_DATE_FORMAT環境變數指定的。 -- b. 如果自動通道沒有被配置,則手動地根據需要分配磁碟或磁帶通道。 -- c. 還原和恢復資料庫 RUN { SET UNTIL SCN 1000; RESTORE DATABASE; RECOVER DATABASE; }
-- 其它的形式 SET UNTIL TIME 'Nov 15 2004 09:00:00'; --使用時間表示式 SET UNTIL SEQUENCE 9923; --使用日誌序號 SET UNTIL RESTORE POINT before_update; --使用還原點
--5. 在SQL*Plus中以read-only方式開啟資料庫,根據需要執行一些查詢確定邏輯損壞已經被回退了。 ALTER DATABASE OPEN READ ONLY; -- 如果對資料庫的狀態滿意,則執行完第6步後結束;如果結果不是希望的,則你可能選擇了錯誤的SCN。 -- 此時應該更深入地調查一下這種不需要的改變,並確定一個新的目標SCN,重複DBPITR --6. 如果對希望的結果滿意,則可執行下面互斥的操作之一 -- a.以讀寫方式開啟資料庫,丟棄所有在目標SCN之後的改變。 SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE OPEN RESETLOGS; -- 如果資料檔案是離線的,則OPEN RESETLOGS操作會失敗,除非資料檔案是正常離線或是隻讀的。 -- 在RESETLOGS之後,可以使只讀的檔案或正常離線的表空間聯機,因為它們不需要任何redo -- b. 使用Data Pump Export工具從資料庫中匯出一個或多個資料庫物件。然後可以恢復資料庫到當前的時間點,然後重新匯入前面匯出的物件。 -- 這樣就可以使這些物件回到不希望的改變之前的狀態,並且不會丟失其它的改變。 |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1097342/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 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-閃回和資料庫時間點恢復的目的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-閃回和資料庫時間點恢復的基本概念GUIIDE資料庫
- Backup And Recovery User's Guide-執行完全資料庫恢復-切換到資料庫拷貝GUIIDE資料庫
- Backup And Recovery User's Guide-恢復資料庫到祖先incarnationGUIIDE資料庫
- 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-從RMAN開始-恢復整個資料庫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-使用SET AUTORECOVERY進行自動恢復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-使用RECOVER命令的自動恢復GUIIDE
- Backup And Recovery User's Guide-從RMAN開始-恢復單個的資料塊GUIIDE
- Backup And Recovery User's Guide-為完全資料庫恢復做準備-確定資料庫的DBIDGUIIDE資料庫
- Backup And Recovery User's Guide-介質恢復問題解決-執行RECOVER…TEST語句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-當不使用恢復目錄時的特殊考慮GUIIDE
- Backup And Recovery User's Guide-在切換到一個拷貝之後執行完全恢復GUIIDE
- Backup And Recovery User's Guide-使用閃回資料庫和還原點-閃回資料庫GUIIDE資料庫