1、REPORT
一、報告目標數據庫的物理結構
RMAN>REPORT SCHEMA數據庫
二、報告須要備份的數據文件spa
在執行備份以前,經常須要取得須要備份的數據文件信息,經過執行REPORT NEED BACKUP命令,能夠列出須要備份的數據文件。當使用REPORT NEED BACKUP命令時,能夠帶有INCREMENTAL、DAYS、REDUNDANCY、RECOVERY WINDOW四個選項。
(1)報告須要轉儲的增量備份超出特定個數的數據文件
當恢復數據文件時,須要轉儲數據文件備份,而後應用歸檔日誌執行恢復。若是備份數據文件採用了增量備份和累積備份策略,那麼在轉儲數據文件時依次轉儲 0、一、2..級別的增量備份,轉儲的數據文件備份越多,恢復時間越長,下面以報告恢復數據文件須要轉儲的增量備份個數超過3次的數據文件爲例:
RMAN>REPORT NEED BACKUP INCREMENTAL 3日誌
其中file用於標識數據文件的編號,Incrementals用於標識須要轉儲的備份文件個數,Name用於標識數據文件的名稱,若是某個文件出現轉儲的次數大於3次,應該在該數據文件上執行徹底備份或增量0級備份。對象
(2)報告特定天數未備份的數據文件
當恢復數據文件時,在轉儲了所需的數據文件備份以後,會應用從備份點開始的全部歸檔日誌。須要應用的歸檔日誌越多,恢復時間越長,爲了減小恢復時間,應該制定備份數據文件的時間週期。rem
USERS表空間上3天未備份的數據文件
RMAN>REPORT NEED BACKUP DAYS 3 TABLESPACE USERS;get
數據庫內10天以上未備份的數據文件
REPORT NEED BACKUP DAYS 10同步
(3)報告低於特定備份次數的數據文件
恢復數據文件時,須要轉儲數據文件備份。當數據文件出現介質失敗,而且數據文件備份也出現問題時,會致使數據文件沒法恢復。在制定備份冊落時,爲了防止數據文件備份出現問題,應該爲數據文件保留多個備份,但某些文件的備份次數過少時,須要增長備份數量。
RMAN>REPORT NEED BACKUP REDUNDANCY 2 DATABASE;table
(4)報告在恢復時間窗口內未備份的數據文件
當恢復數據文件時,在轉儲了所需的數據文件備份以後,會應用從備份點開始的全部歸檔日誌。須要應用的歸檔日誌越多,恢復時間越長。經過使用恢復時間窗口,能夠將恢復操做須要應用的歸檔日誌控制在特定時間範圍內。下面以報告超過恢復窗口6天的未備份數據文件爲例,說明使用DAYS選項的方法:
RMAN>REPORT NEED BACKUP RECOVERY WINDOW OF 6 DAYS配置
DAYS用於標識恢復數據文件須要應用幾天前的歸檔日誌。date
三、報告陳舊備份
當使用RMAN執行恢復操做時,RMAN會自動轉儲最近的備份文件,而後應用該備份文件以後的歸檔日誌。若是在特定數據文件上進行了屢次備份,那麼能夠刪除早期備份,經過使用REPORT OBSOLETE命令,能夠報告陳舊備份。下例報告備份次數超過2次的陳舊備份:
RMAN>REPORT OBSOLETE REDUNDANCY 2;
四、報告不可恢復的數據文件
當使用NOLOGGING選項裝載了數據庫以後,由於數據變化沒有被記錄到歸檔日誌中,因此會致使過去的數據文件備份不能恢復當前數據文件。爲防止數據文件不能恢復,應該備份該數據文件,經過以下語句,能夠查看數據庫全部不可恢復的數據文件:
RMAN>REPORT UNRECOVERABLE;
2、LIST
一、列出數據文件備份集
RMAN>LIST BACKUP OF TABLESPACE USER01;
二、列出控制文件備份集
RMAN>LIST BACKUP OF CONTROLFILE;
三、列出歸檔日誌備份集
RMAN>LIST BACKUP OF ARCHIVELOG ALL;
四、列出SPFILE備份集
RMAN>LIST BACKUP OF SPFILE;
五、列出數據文件映像副本
可用LIST COPY OF DATABASE列出全部數據文件的映像副本;用LIST COPY OF TABLESPACE列出特定表空間數據文件的映像副本;用LIST COPY OF DATAFILE列出特定數據文件的映像副本。
RMAN>LIST COPY OF DATAFILE 5
六、列出控制文件映像副本
RMAN>LIST COPY OF CONTROLFILE
七、列出歸檔日誌映像副本。
RMAN>LIST COPY OF ARCHIVELOG ALL;
八、列出數據庫副本
每次使用RESETLOGS選項打開數據庫以後都會生成一個新的數據庫副本。
RMAN>LIST INCARNATION OF DATABASE;
3、CROSSCHECK
該命令用於覈對磁盤和磁帶上的備份文件,以確保RMAN資料庫與備份文件保持同步。該命令只會檢查RMAN資料庫所記載的備份文件。當執行CROSSCHECK命令時,若是資料庫記錄不匹配於備份文件的物理狀態,那麼該命令會更新資料庫記錄的狀態信息。當使用CROSSCHECK命令覈對備份文件以後,備份文件的狀態會包括AVAILABLE、UNAVAILABLE和EXPIRED三種,若是備份文件處於EXPIRED狀態,則說明物理文件已經被手工刪除或者損壞。注意,若是備份文件處於EXPIRED狀態,應該使用DELETE命令刪除該備份文件。AVAILABLE與UNAVAILABLE是能夠手工進行設置切換的要是備份集處於UNAVAILABLE狀態,當使用RMAN恢復時,RMAN不會考慮使用這個備份集。
一、覈對全部備份集
RMAN>CROSSCHECK BACKUP;
二、覈對全部數據文件的備份集
RMAN>CROSSCHECK BACKUP OF DATABASE;
三、覈對特定表空間的備份集
RMAN>CROSSCHECK BACKUP OF TABLESPACE SYSTEM;
四、覈對特定數據文件的備份集
RMAN>CROSSCHECK BACKUP OF DATAFILE 4;
五、覈對控制文件的備份集
RMAN>CROSSCHECK BACKUP OF CONTROLFILE;
六、覈對SPFILE的備份集
RMAN>CROSSCHECK BACKUP OF SPFILE;
七、覈對歸檔日誌的備份集
RMAN>CROSSCHECK BACKUP OF ARCHIVELOG SEQUENCE 3;
八、覈對全部映像副本
RMAN>CROSSCHECK COPY;
九、覈對全部數據文件的映像副本
RMAN>CROSSCHECK COPY OF DATABASE;
十、覈對特定表空間的映像副本
RMAN>CROSSCHECK COPY OF TABLESPACE USERS;
十一、覈對特定數據文件的映像副本
RMAN>CROSSCHECK COPY OF DATAFILE 4;
十二、覈對控制文件的映像副本
RMAN>CROSSCHECK COPY OF CONTROLFILE;
1三、覈對歸檔日誌的映像副本
RMAN>CROSSCHECK COPY OF ARCHIVELOG SEQUENCE 4;
4、DELETE
該命令用於刪除RMAN備份記錄及相應的物理文件
一、刪除陳舊備份
RMAN>DELETE OBSOLETE;
二、刪除EXPIRED備份集
當使用OS命令刪除了備份集對應的備份片文件後,若是執行CROSSCHECK命令覈對備份集,那麼會將該備份集標記爲EXPIRED狀態。NOPROMPT表示刪除時不須要有任何提示信息。
RMAN>DELETE NOPROMPT EXPIRED BACKUP;
三、刪除EXPIRED副本
RMAN>DELETE NOPROMPT EXPIRED COPY;
四、刪除特定備份集
RMAN>DELETE NOPROMPT BACKUPSET 19;
五、刪除特定備份片
RMAN>DELETE NOPROMPT BACKUPPIECE 'D:/BACKUP/DEMO_18.BAK';
六、刪除全部備份集
RMAN>DELETE NOPROMPT BACKUP;
七、刪除特定映像副本
RMAN>DELETE NOPROMPT DATAFILECOPY 'D:/BACKUP/DEM0_19.BAK';
八、刪除全部映像副本
RMAN>DELETE NOPROMPT COPY;
九、在備份後刪除輸入對象
當使用BACKUP命令備份歸檔日誌或備份集時,在備份完成以後能夠刪除原有輸入對象,示例以下:
RMAN>BACKUP ARCHIVELOG ALL DELETE INPUT;
RMAN>BACKUP BACKUPSET 22 FORMAT='D:/BACKUP/%u.BAK' DELETE INPUT;
5、CHANGE
一、改變備份集狀態
可用CHANGE BACKUPSET .. UNAVAILABLE/AVAILABLE來改變一個備份集的狀態。
RMAN>CHANGE BACKUPSET 22 UNAVAILABLE
二、改變映像副本狀態
數據文件:CHANGE DATAFILECOPY .. AVAILABLE/UNAVAILABLE
控制文件:CHANGE CONTROLFILECOPY .. AVAILABLE/UNAVAILABLE
歸檔日誌:CHANGE ARCHIVELOG .. AVAILABLE/UNAVAILABLE
例如:
RMAN>CHANGE DATAFILECOPY 'D:/BACKUP/DEMO_37.BAK' UNAVAILABLE;
三、創建長期備份
長期備份是指被長期保留的備份文件(黃金備份),使用長期備份的目的是爲了能夠將數據庫恢復到過去的特定時間點。當設定了長期備份以後,RMAN會從設備冗餘策略中免除該備份文件,也就是說,長期備份文件不會被標記爲陳舊備份。
命令:CHANGE .. KEEP/NOKEEP
(1)使備份集156永久保留
RMAN>CHANGE BACKUPSET 156 KEEP FOREVER LOGS;
(2)使備份集198保留60天
RMAN>CHANGE BACKUPSET 198 KEEP UNTIL TIME 'SYSDATE+60' LOGS;
(3)免除備份集156的保留期限
RMAN>CHANGE BACKUPSET 156 NOKEEP;
使用RMAN進行備份和恢復的經常使用命令
===================
鏈接到目標數據庫(不用恢復目錄數據庫)
rman target / nocatalog
顯示rman配置
RMAN> show all;
====================
報告目標數據庫的物理結構
RMAN> report schema;
報告陳舊備份
RMAN> report obsolete;
報告不可恢復的數據文件
RMAN> report unrecoverable;
列出備份信息
RMAN> list backup;
RMAN> list backup of database;
RMAN> list backup of tablespace table_name;
RMAN> list backup of controlfile;
RMAN> list backup of spfile;
RMAN> list backupset id;
========================
校驗備份信息:
RMAN> crosscheck backup;
RMAN> crosscheck backup of database;
RMAN> crosscheck backup of tablespace system;
RMAN> crosscheck backup of controlfile;
RMAN> crosscheck backup of spfile;
========================
刪除備份
RMAN> delete obsolete; -- 刪除陳舊備份
RMAN> delete expired backup;
RMAN> delete backupset id;
RMAN> delete backup; -- 刪除全部備份
=========================
改變備份集的狀態
RMAN> change backupset id unavailable; -- available
改成長期備份
RMAN> change backupset id keep forever logs;
RMAN> change backupset id keep until time 'sysdate+60' logs;
RMAN> change backupset id nokeep;