rman report list crosscheck delete

kuqlan發表於2011-07-16

一、REPORT

1、報告目標資料庫的物理結構

RMAN>REPORT SCHEMA

2、報告需要備份的資料檔案

在執行備份之前,常常需要取得需要備份的資料檔案資訊,透過執行REPORT NEED BACKUP命令,可以列出需要備份的資料檔案。當使用REPORT NEED BACKUP命令時,可以帶有INCREMENTALDAYSREDUNDANCYRECOVERY WINDOW四個選項。

[@more@]

一、REPORT

1、報告目標資料庫的物理結構

RMAN>REPORT SCHEMA

2、報告需要備份的資料檔案

在執行備份之前,常常需要取得需要備份的資料檔案資訊,透過執行REPORT NEED BACKUP命令,可以列出需要備份的資料檔案。當使用REPORT NEED BACKUP命令時,可以帶有INCREMENTALDAYSREDUNDANCYRECOVERY WINDOW四個選項。


(1)報告需要轉儲的增量備份超出特定個數的資料檔案

當恢復資料檔案時,需要轉儲資料檔案備份,然後應用歸檔日誌執行恢復。如果備份資料檔案採用了增量備份和累積備份策略,那麼在轉儲資料檔案時依次轉儲 012..級別的增量備份,轉儲的資料檔案備份越多,恢復時間越長,下面以報告恢復資料檔案需要轉儲的增量備份個數超過3次的資料檔案為例:

RMAN>REPORT NEED BACKUP INCREMENTAL 3

其中file用於標識資料檔案的編號,Incrementals用於標識需要轉儲的備份檔案個數,Name用於標識資料檔案的名稱,如果某個檔案出現轉儲的次數大於3次,應該在該資料檔案上執行完全備份或增量0級備份。

(2)報告特定天數未備份的資料檔案

當恢復資料檔案時,在轉儲了所需的資料檔案備份之後,會應用從備份點開始的所有歸檔日誌。需要應用的歸檔日誌越多,恢復時間越長,為了減少恢復時間,應該制定備份資料檔案的時間週期。

USERS表空間上3天未備份的資料檔案

RMAN>REPORT NEED BACKUP DAYS 3 TABLESPACE USERS;

資料庫內10天以上未備份的資料檔案

REPORT NEED BACKUP DAYS 10


(3)報告低於特定備份次數的資料檔案

恢復資料檔案時,需要轉儲資料檔案備份。當資料檔案出現介質失敗,並且資料檔案備份也出現問題時,會導致資料檔案無法恢復。在制定備份冊落時,為了防止資料檔案備份出現問題,應該為資料檔案保留多個備份,但某些檔案的備份次數過少時,需要增加備份數量。

RMAN>REPORT NEED BACKUP REDUNDANCY 2 DATABASE;

(4)報告在恢復時間視窗內未備份的資料檔案

當恢復資料檔案時,在轉儲了所需的資料檔案備份之後,會應用從備份點開始的所有歸檔日誌。需要應用的歸檔日誌越多,恢復時間越長。透過使用恢復時間視窗,可以將恢復操作需要應用的歸檔日誌控制在特定時間範圍內。下面以報告超過恢復視窗6天的未備份資料檔案為例,說明使用DAYS選項的方法:

RMAN>REPORT NEED BACKUP RECOVERY WINDOW OF 6 DAYS

DAYS用於標識恢復資料檔案需要應用幾天前的歸檔日誌。

3、報告陳舊備份

當使用RMAN執行恢復操作時,RMAN會自動轉儲最近的備份檔案,然後應用該備份檔案之後的歸檔日誌。如果在特定資料檔案上進行了多次備份,那麼可以刪除早期備份,透過使用REPORT OBSOLETE命令,可以報告陳舊備份。下例報告備份次數超過2次的陳舊備份:

RMAN>REPORT OBSOLETE REDUNDANCY 2;

4、報告不可恢復的資料檔案

當使用NOLOGGING選項裝載了資料庫之後,因為資料變化沒有被記錄到歸檔日誌中,所以會導致過去的資料檔案備份不能恢復當前資料檔案。為防止資料檔案不能恢復,應該備份該資料檔案,透過如下語句,可以檢視資料庫所有不可恢復的資料檔案:

RMAN>REPORT UNRECOVERABLE;


二、LIST

1、列出資料檔案備份集

RMAN>LIST BACKUP OF TABLESPACE USER01;

2、列出控制檔案備份集

RMAN>LIST BACKUP OF CONTROLFILE;


3、列出歸檔日誌備份集

RMAN>LIST BACKUP OF ARCHIVELOG ALL;

4、列出SPFILE備份集

RMAN>LIST BACKUP OF SPFILE;

5、列出資料檔案映像副本

可用LIST COPY OF DATABASE列出所有資料檔案的映像副本;用LIST COPY OF TABLESPACE列出特定表空間資料檔案的映像副本;用LIST COPY OF DATAFILE列出特定資料檔案的映像副本。

RMAN>LIST COPY OF DATAFILE 5

6、列出控制檔案映像副本

RMAN>LIST COPY OF CONTROLFILE


7、列出歸檔日誌映像副本。

RMAN>LIST COPY OF ARCHIVELOG ALL;

8、列出資料庫副本

每次使用RESETLOGS選項開啟資料庫之後都會生成一個新的資料庫副本。

RMAN>LIST INCARNATION OF DATABASE;


三、CROSSCHECK

該命令用於核對磁碟和磁帶上的備份檔案,以確保RMAN資料庫與備份檔案保持同步。該命令只會檢查RMAN資料庫所記載的備份檔案。當執行CROSSCHECK命令時,如果資料庫記錄不匹配於備份檔案的物理狀態,那麼該命令會更新資料庫記錄的狀態資訊。當使用CROSSCHECK命令核對備份檔案之後,備份檔案的狀態會包括AVAILABLEUNAVAILABLEEXPIRED三種,如果備份檔案處於EXPIRED狀態,則說明物理檔案已經被手工刪除或者損壞。注意,如果備份檔案處於EXPIRED狀態,應該使用DELETE命令刪除該備份檔案。AVAILABLEUNAVAILABLE是可以手工進行設定切換的要是備份集處於UNAVAILABLE狀態,當使用RMAN恢復時,RMAN不會考慮使用這個備份集。


1、核對所有備份集

RMAN>CROSSCHECK BACKUP;

2、核對所有資料檔案的備份集

RMAN>CROSSCHECK BACKUP OF DATABASE;

3、核對特定表空間的備份集

RMAN>CROSSCHECK BACKUP OF TABLESPACE SYSTEM;

4、核對特定資料檔案的備份集

RMAN>CROSSCHECK BACKUP OF DATAFILE 4;

5、核對控制檔案的備份集

RMAN>CROSSCHECK BACKUP OF CONTROLFILE;

6、核對SPFILE的備份集

RMAN>CROSSCHECK BACKUP OF SPFILE;

7、核對歸檔日誌的備份集

RMAN>CROSSCHECK BACKUP OF ARCHIVELOG SEQUENCE 3;

8、核對所有映像副本

RMAN>CROSSCHECK COPY;

9、核對所有資料檔案的映像副本

RMAN>CROSSCHECK COPY OF DATABASE;

10、核對特定表空間的映像副本

RMAN>CROSSCHECK COPY OF TABLESPACE USERS;

11、核對特定資料檔案的映像副本

RMAN>CROSSCHECK COPY OF DATAFILE 4;

12、核對控制檔案的映像副本

RMAN>CROSSCHECK COPY OF CONTROLFILE;

13、核對歸檔日誌的映像副本

RMAN>CROSSCHECK COPY OF ARCHIVELOG SEQUENCE 4;


四、DELETE

該命令用於刪除RMAN備份記錄及相應的物理檔案

1、刪除陳舊備份

RMAN>DELETE OBSOLETE;

2、刪除EXPIRED備份集

當使用OS命令刪除了備份集對應的備份片檔案後,如果執行CROSSCHECK命令核對備份集,那麼會將該備份集標記為EXPIRED狀態。NOPROMPT表示刪除時不需要有任何提示資訊。

RMAN>DELETE NOPROMPT EXPIRED BACKUP;

3、刪除EXPIRED副本

RMAN>DELETE NOPROMPT EXPIRED COPY;

4、刪除特定備份集

RMAN>DELETE NOPROMPT BACKUPSET 19;

5、刪除特定備份片

RMAN>DELETE NOPROMPT BACKUPPIECE 'D:BACKUPDEMO_18.BAK';

6、刪除所有備份集

RMAN>DELETE NOPROMPT BACKUP;

7、刪除特定映像副本

RMAN>DELETE NOPROMPT DATAFILECOPY 'D:BACKUPDEM0_19.BAK';

8、刪除所有映像副本

RMAN>DELETE NOPROMPT COPY;

9、在備份後刪除輸入物件

當使用BACKUP命令備份歸檔日誌或備份集時,在備份完成之後可以刪除原有輸入物件,示例如下:

RMAN>BACKUP ARCHIVELOG ALL DELETE INPUT;

RMAN>BACKUP BACKUPSET 22 FORMAT='D:BACKUP%u.BAK' DELETE INPUT;

五、CHANGE

1、改變備份集狀態

可用CHANGE BACKUPSET .. UNAVAILABLE/AVAILABLE來改變一個備份集的狀態。


RMAN>CHANGE BACKUPSET 22 UNAVAILABLE

2、改變映像副本狀態

資料檔案:CHANGE DATAFILECOPY .. AVAILABLE/UNAVAILABLE

控制檔案:CHANGE CONTROLFILECOPY .. AVAILABLE/UNAVAILABLE

歸檔日誌:CHANGE ARCHIVELOG .. AVAILABLE/UNAVAILABLE

例如:

RMAN>CHANGE DATAFILECOPY 'D:BACKUPDEMO_37.BAK' UNAVAILABLE;

3、建立長期備份

長期備份是指被長期保留的備份檔案(黃金備份),使用長期備份的目的是為了可以將資料庫恢復到過去的特定時間點。當設定了長期備份之後,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;


源文件 <http://bianxq.javaeye.com/blog/487925>

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/18841027/viewspace-1052535/,如需轉載,請註明出處,否則將追究法律責任。

相關文章