進入RMAN恢複管理器2種方式:
1、直接在系統指令提示符敲入rman指令,進入rman控制台後執行connect
D:\>rman
恢複管理器: Release 10.2.0.2.0 - Production on 星期四 1月 4 10:08:52
Copyright (c) 1982, 2005, Oracle. All rights reserved.
RMAN> connect target /
連接配接到目标資料庫: ROME (DBID=252956976)
RMAN>
2、在系統指令提示符下敲入target和catalog(沒有此項預設非catalog方式,控制檔案記錄rman操作的詳細資訊)的使用者和密碼
# example of operating system authentication
D:\>rman TARGET /
# example of Oracle Net authentication
RMAN> exit
恢複管理器完成。
注:我們将在以後章節講述帶有恢複目錄的RMAN操作。
我們可以看一下rman可以連接配接的資料庫的類型如下:
Target database RMAN connects you to the target database, which is the database that you are backing up or recovering, with the SYSDBA privilege. If you do not have this privilege, then the connection fails.
Recovery catalog database This database is optional. By default, RMAN runs in NOCATALOG mode.
Auxiliary database You can connect to a standby database, duplicate database, or auxiliary instance (standby instance or tablespace point-in-time recovery instance).
Note:
You do not need to specify the SYSDBA option because RMAN uses this option implicitly and automatically.
RMAN配置
執行show all指令可以顯示rman的目前配置。
RMAN> show all;
使用目标資料庫控制檔案替代恢複目錄
RMAN 配置參數為:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\S
NCFROME.ORA'; # default
如果想恢複某項設定,我們執行如下指令:CONFIGURE... CLEAR,例如:
注:大部配置設定置項的值都是TO後邊的内容,個别的除外,例如:
CONFIGURE ENCRYPTION FOR DATABASE OFF
RMAN> configure retention policy to redundancy 2;
新的 RMAN 配置參數:
CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
已成功存儲新的 RMAN 配置參數
RMAN> configure retention policy clear;
舊的 RMAN 配置參數:
RMAN 配置參數已成功重置為預設值
下面詳細講一下rman的各項配置的含義:
1、 Configuring the Default Device Type for Backups
配置預設備份裝置
預設情況下rman預設的備份裝置為磁盤disk,我們也可以配置其他媒體作為rman的備份裝置如錄音帶等。
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt;
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO DISK;
關于裝置的類型要參考裝置提供商給的說明文檔,按照他們提供的裝置名進行備份裝置的配置。
2、Configuring the Default Backup Type for Disk Backups
配置磁盤備份的備份類型:備份集或者鏡像拷貝(檔案拷貝)
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY; # image copies
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET; # uncompressed
注:鏡像拷貝隻适用于磁盤備份,錄音帶等其他媒體隻支援備份集。鏡像拷貝是對資料檔案等的拷貝,占用空間大消耗時間長,是以不建議使用。
如果備份類型是備份集的話,我們還可以制定下面的壓縮參數:
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;
RMAN> CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO COMPRESSED BACKUPSET;這裡要注意如果想要恢複Compressed,我們可以再次執行以下指令,而不是用clear指令來清除Compressed參數。
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET;
RMAN> CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO BACKUPSET;
另外備份類型還支援并行度參數PARALLELISM,預設值為1,我們可以适當調節該參數來加快備份速度。
Configuring Disk Devices and Channels
配置磁盤裝置和通道
Rman通過通道連接配接到目标資料庫,通道執行着rman的全部工作,預設情況下rman為所有的操作配置設定1個通道。
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/oracle/db_%T_%U.dbf';
如果是asm磁盤可以按照如下配置:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '+dgroup1';
如果是錄音帶裝置可以按照如下配置:
CONFIGURE CHANNEL DEVICE TYPE sbt PARMS='ENV=mml_env_settings';
通過PARMS指定備份裝置對應的串。
4、Configuring Control File and Server Parameter File Autobackup
配置控制檔案和參數檔案自動備份
我們可以通過下面指令來啟用和停用控制檔案自動備份。
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
如果控制檔案自動備份啟動,每次控制檔案内容發生變化的時候,oracle 自動在如下目錄下(如果沒有指定控制檔案備份格式,并且安裝了快速恢複區flash recovery area的話)備份控制檔案。 …\flash_recovery_area\SID\AUTOBACKUP\2007_01_04\。
5、Configuring the Control File Autobackup Format
配置控制檔案自動備份格式
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:\cf_%F';
如果是asm儲存設備,可以如下設定控制檔案自動備份格式:
CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE DISK TO '+dgroup1';
清除控制檔案自動備份格式指令如下:
CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE DISK CLEAR;
CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE sbt CLEAR;
當然我們也可以在執行rman操作的設定備份格式,如:
RMAN> SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE sbt TO 'controlfile_%F';
RMAN> BACKUP AS COPY DATABASE;
以上設定在整個rman操作控制台生效。
RMAN> RUN {
SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/tmp/%F.bck';
BACKUP AS BACKUPSET DEVICE TYPE DISK DATABASE;
}
這個set設定在rman程式塊生效。
6、Configuring the Backup Retention Policy
配置備份保留政策
備份保留政策有2種方式:一種是基于時間的保留政策,一種是基于備援度的保留政策。
based on a recovery window (the maximum number of days into the past for which you can recover) or redundancy (how many copies of each backed-up file to keep).
Configuring a Recovery Window-Based Retention Policy
RECOVERY WINDOW參數指出了最大保留時間為從目前日期到多少天前。
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
Rman将保留着這期間的任何全庫備份和level 0的增量備份,同時rman也保留着歸檔日志和level 1的增量備份,以便于可以做這個期間的基于時間點的恢複。Rman不會删除過期的備份,如果我們用REPORT OBSOLETE可以看到過期的備份并且執行DELETE OBSOLETE來删除過期的備份。
Configuring a Redundancy-Based Retention Policy
REDUNDANCY參數指出了我們想保留幾份備份檔案。
CONFIGURE RETENTION POLICY TO REDUNDANCY 3;
檢視目前備份保留政策:
RMAN> SHOW RETENTION POLICY;
如果我們執行以下指令來清除備份保留政策,rman将不會将任何備份标記為過期。
CONFIGURE RETENTION POLICY TO NONE;
RMAN備份
Rman可以備份資料檔案、歸檔日志、控制檔案、參數檔案、備份集檔案(其他rman操作備份産生)。
Rman備份檔案有兩種存儲方式:鏡像拷貝和備份集。兩者是有差別的,備份集隻備份使用過的資料塊而鏡像拷貝是拷貝整個資料檔案。
最簡單的一個全庫備份Whole Database Backups指令如下:
RMAN> BACKUP DATABASE; # uses automatic channels to make backup
RMAN> SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT'; # switches logs and archives all logs
備份集:
備份集是rman按照邏輯結構存儲備份的一種檔案格式。備份集可以包含多個資料檔案、歸檔檔案、控制檔案和參數檔案,但是資料檔案和歸檔檔案不能放在一個備份集内。也可以把一個備份集備份到另外一個備份集(合并備份集)。一個檔案不能備份到2個備份集内。
備份片:
一個備份集可以由一個或者多個備份片組成。
注意:
這裡解釋一個概念
Full and Incremental Datafile Backups全部和增量資料檔案備份,這裡的full和a whole database backup是有差別的。a whole database backup是備份全部資料檔案和目前控制檔案和參數檔案。以後我們講到的增量備份隻是針對資料檔案而言。
備份可以自己執行格式,也可以使用預設格式:
RMAN> BACKUP DATABASE FORMAT '/tmp/%U'; # %U generates a unique filename
RMAN> BACKUP DATABASE TAG = 'weekly_backup'; # gives the backup a tag
identifier
備份表空間:
BACKUP DEVICE TYPE sbt MAXSETSIZE = 10M TABLESPACE users, tools;
備份資料檔案、鏡像拷貝:
BACKUP DEVICE TYPE sbt DATAFILE 1,2,3,4 DATAFILECOPY 'd:\system01.dbf';
當然我們也可以單獨備份鏡像拷貝檔案:
BACKUP DEVICE TYPE sbt DATAFILECOPY '/tmp/system01.dbf';
注意上邊這個是把資料檔案1234和以前做的鏡像拷貝同時備份。
備份控制檔案:
我們可以直接執行BACKUP CURRENT CONTROLFILE指令來備份控制檔案
我們可以在任何backup指令後邊加上INCLUDE CURRENT CONTROLFILE操作來備份控制檔案。
一個全庫備份包含了單前控制檔案,這裡要注意控制檔案自動備份和手動備份的差別,後者可以在任何修改控制檔案的操作執行後自動備份控制檔案,而前者則不能,我們在講rman配置的時候也提到過這些。下面給幾個例子:
BACKUP CURRENT CONTROLFILE TAG = mondaypmbackup;
BACKUP DEVICE TYPE sbt TABLESPACE users INCLUDE CURRENT CONTROLFILE;
--生成控制檔案鏡像拷貝
BACKUP AS COPY CURRENT CONTROLFILE FORMAT '/tmp/control01.ctl';
--備份控制檔案鏡像拷貝
BACKUP DEVICE TYPE sbt CONTROLFILECOPY '/tmp/control01.ctl';
備份參數檔案:
BACKUP DEVICE TYPE sbt SPFILE;
備份歸檔日志:
我們可以直接執行BACKUP ARCHIVELOG或者在備份資料檔案和控制檔案的同時指定BACKUP ... PLUS ARCHIVELOG操作來一起備份歸檔日志。
我們可以備份全部歸檔日志,也可以指定參數來備份部分歸檔日志:
BACKUP ARCHIVELOG ALL;
BACKUP ARCHIVELOG FROM TIME 'SYSDATE-30' UNTIL TIME 'SYSDATE-7'
備份歸檔開始執行的時候,rman會發出一個切換日志的指令(我們可以從v$log觀察),然後歸檔所有非目前日志,然後再執行歸檔日志的備份。
在備份完歸檔日志後我們可以指定DELETE INPUT or DELETE ALL INPUT這兩個參數,來删除備份集中已經備份過的或者全部歸檔日志檔案。
下面再給出幾個示例備份歸檔的指令:
RMAN> BACKUP ARCHIVELOG LIKE 'ORACLE/ARC/DEST/LOG%';
RMAN> BACKUP ARCHIVELOG ALL;
RMAN> BACKUP ARCHIVELOG FROM LOGSEQ 20 UNTIL LOGSEQ 50 THREAD 1;
RMAN> BACKUP ARCHIVELOG FROM SCN 1 UNTIL SCN 9999;
我們可以使用如下指令在進行其他備份的同時來備份歸檔日志檔案:
RMAN> BACKUP ... PLUS ARCHIVELOG
上述指令的執行過程如下:
執行ALTER SYSTEM ARCHIVE LOG CURRENT指令。
執行BACKUP ARCHIVELOG ALL指令。如果backup optimization參數設定為enabled,rman将不備份那些已經備份過的歸檔日志檔案。
備份在BACKUP指令中指定的備份内容。
備份在BACKUP指令執行過程中産生的其他的歸檔日志檔案。
壓縮備份集:
BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG;
BACKUP AS COMPRESSED BACKUPSET DATAFILE 1,2,4;
為了能在災難性損壞的時候有效的恢複資料庫,我們需要保留一些機器配置、作業系統和資料庫的一些基礎資訊。
資料庫伺服器機器名稱、IP位址、作業系統版本和更新檔号、磁盤數量和驅動器号、磁盤容量和剩餘空間、資料檔案名稱、資料庫SID、DBID、ORACLE版本和更新檔号、常用的RMAN備份腳本等等。
RMAN增量備份
我們可以用RMAN進行資料庫、表空間和資料檔案的增量備份。
如果資料庫運作在歸檔模式,在資料庫OPEN狀态我們可以進行增量備份;如果資料庫處于非歸檔方式,在資料庫CLOSE狀态我們也可以進行增量備份。增量備份隻備份上次備份以來變化過的資料塊。
每個資料塊都包含一個system change number (SCN),記錄着該資料塊的最後改變。在進行增量備份的時候,RMAN将沒給資料塊的SCN和父級增量備份的CHECKPOINT SCN進行比較,如果該資料塊的SCN大于等于父級的CHECKPOINT SCN,RMAN将備份該資料塊。
為了提高資料庫增量備份的性能,我們可以指定變化跟蹤檔案來監控資料塊的改變:
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING;
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE 'd:/rman_change.f' REUSE;
SQL> ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;
可以通過以下指令查詢:
SQL> SELECT FILENAME,STATUS FROM V$BLOCK_CHANGE_TRACKING
移動跟蹤檔案:
SQL>SELECT filename FROM V$BLOCK_CHANGE_TRACKING;
SQL>SHUTDOWN IMMEDIATE;
SQL>HOST COPY OLDFILE NEWFILE
SQL>STARTUP MOUNT;
SQL>ALTER DATABASE RENAME FILE ‘OLDFILE' TO ‘NEWFILE’;
SQL>ALTER DATABASE OPEN;
如果不能關閉資料庫,必須禁用跟蹤檔案然後移動跟蹤檔案:
ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE 'new_location';
增量備份分為兩種:差異增量備份和累積增量備份。預設的增量備份是差異增量備份。
差異增量備份:備份同級或者上級(如果有同級備份,先找同級)備份(差異或者累積)以來變化的資料塊。如果找不到同級或者上級(知道LEVEL0),如果ORACLE版本>=10.0.0,RMAN将COPY從資料檔案建立開始所有的資料塊作為LEVEL1備份;如果ORACLE版本<10.0.0,RMAN将生成LEVEL0備份。
如下圖所示:
周日:RMAN備份所有被使用過的資料塊。
周一至周六:RMAN備份自從上次LEVEL0或者LEVEL1備份以來變化的資料塊。
累積增量備份:備份上級備份以來變化的資料塊。
周一至周六:RMAN備份自從上次LEVEL0備份以來變化的資料塊。
我們可以看出累積增量備份備份檔案要比差異增量備份檔案大,因為累積增量備份重複備份了同級别備份的資料塊。
制定一個恰當的備份政策是很重要的,通常我們在有50%的資料塊改變的時候,進行一次LEVEL0級别的備份。可以通過以下查詢來獲得資料塊增量備份已經備份50%以上的資料塊。
SELECT FILE#, INCREMENTAL_LEVEL, COMPLETION_TIME, BLOCKS, DATAFILE_BLOCKS
FROM V$BACKUP_DATAFILE
WHERE INCREMENTAL_LEVEL > 0
AND BLOCKS / DATAFILE_BLOCKS > .5
ORDER BY COMPLETION_TIME;
增量備份示例:
RMAN> BACKUP INCREMENTAL LEVEL 0 DATABASE;
RMAN> BACKUP INCREMENTAL LEVEL 1 TABLESPACE SYSTEM DATAFILE 'ora_home/oradata/ tools01.dbf';
RMAN> BACKUP INCREMENTAL LEVEL = 1 CUMULATIVE TABLESPACE users;
增量追加備份:前滾鏡像拷貝
ORACLE文檔原文:Incrementally Updated Backups: Rolling Forward Image Copy Backups。
增量追加備份工作原理:首先建立一個檔案鏡像拷貝,然後定期把從上次鏡像拷貝最大SCN以來變化的資料塊追加到鏡像拷貝檔案中。增量追加備份可以達到快速恢複的目的,如果是每天進行增量追加的話,在進行恢複的時候,我們最多應用一天的REDO資料就可以完成恢複。
建立增量追加備份,格式如下:
BACKUP... FOR RECOVER OF COPY WITH TAG
一個基礎的增量追加備份示例:簡稱basic腳本
RUN {
RECOVER COPY OF DATABASE WITH TAG 'incr_update';
BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_update'
DATABASE;
}
為了了解上述腳本,我們先看一下如果沒有資料檔案拷貝和增量備份運作這兩個腳本的情況。
1、如果沒有LEVEL0備份或者備份檔案拷貝,執行BACKUP INCREMENTAL LEVEL 1... FOR RECOVER OF COPY WITH TAG...不能産生LEVEL1增量備份檔案,但是RMAN會按照指定的tag在DATAFILE對應的目錄下建立一分鏡像檔案拷貝。
2、如果沒有LEVEL0備份或者備份檔案拷貝,執行RECOVER COPY OF DATABASE WITH TAG...則生成一些資訊但是不産生錯誤。
我們看一下整個basic腳本的執行情況:
第一次運作該腳本沒有資料檔案拷貝和增量備份是以執行RECOVER COPY OF DATABASE WITH TAG 'incr_update'沒有任何結果;執行BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_update' DATABASE将産生資料檔案的鏡像檔案拷貝。
第二次運作該腳本,由于第一次運作的時候BACKUP INCREMENTAL LEVEL 1... FOR RECOVER OF COPY WITH TAG...指令産生一個鏡像檔案拷貝,但是沒有LEVEL1的增量備份,是以執行RECOVER COPY OF DATABASE WITH TAG 'incr_update'還是沒有任何結果;執行BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_update' DATABASE将産生LEVEL1增量備份。
第三次運作該腳本,執行RECOVER COPY OF DATABASE WITH TAG 'incr_update'指令将把第二次執行該腳本産生的LEVEL1增量備份追加到鏡像檔案拷貝,同時又産生一個新的LEVEL1增量備份檔案。
以後再執行該腳本都是把上次産生的LEVEL1的增量備份追加到鏡像檔案拷貝,然後再産生一個新的LEVEL1的增量備份檔案。
如果需要恢複,我們首先恢複鏡像檔案拷貝和最後一次LEVEL1增量備份,最後應用REDO。
RMAN備份的查詢和報告
LIST指令:
LIST BACKUP; # lists backup sets, image copies, and proxy copies
LIST BACKUPSET; # lists only backup sets and proxy copies
LIST COPY; # lists only disk copies
LIST BACKUP BY FILE; # shows backup sets, proxy copies, and image copies
LIST COPY BY FILE; # shows only disk copies
LIST EXPIRED BACKUP;
LIST EXPIRED BACKUP BY FILE;
LIST BACKUP SUMMARY; # lists backup sets, proxy copies, and disk copies
LIST EXPIRED BACKUP SUMMARY;
LIST BACKUP OF DATABASE; # lists backups of all files in database
LIST COPY OF DATAFILE 'ora_home/oradata/trgt/system01.dbf'; # lists copy of specified datafile
LIST BACKUPSET 213; # lists specified backup set
LIST DATAFILECOPY '/tmp/tools01.dbf'; # lists datafile copy
LIST BACKUPSET TAG 'weekly_full_db_backup'; # specify a backup set by tag
LIST COPY OF DATAFILE 'ora_home/oradata/trgt/system01.dbf' DEVICE TYPE sbt; # specify a backup or copy by device type
LIST BACKUP LIKE '/tmp/%'; # specify a backup by directory or path
LIST COPY OF DATAFILE 2 COMPLETED BETWEEN '10-DEC-2002' AND '17-DEC-2002'; # specify a backup or copy by a range of completion dates
LIST ARCHIVELOG ALL BACKED UP 2 TIMES TO DEVICE TYPE sbt; # specify logs backed up at least twice to tape
LIST BACKUP OF DATAFILE 1;
LIST BACKUP OF TABLESPACE;
LIST BACKUP OF DATAFILE;
LIST BACKUP ARCHIVELOG ALL; #簡要資訊
LIST BACKUP OF ARCHIVELOG ALL; #詳細資訊
LIST BACKUP OF CONTROFILE;
LIST BACKUP OF SPFILE;
舉個例子:
RMAN>list backup summary;
RMAN> list backup summary;
備份清單
===============
關鍵字 TY LV S 裝置類型 完成時間 段數 副本數 壓縮标記
------- -- -- - ----------- ---------- ------- ------- ---------- ---
1 B F A DISK 02-1月 -07 1 1 NO TAG20070102T162107
2 B F A DISK 02-1月 -07 1 1 NO TAG20070102T162107
3 B F A DISK 03-1月 -07 1 1 NO TAG20070103T151828
4 B F A DISK 03-1月 -07 1 1 NO TAG20070103T151828
5 B F A DISK 03-1月 -07 1 1 NO TAG20070103T152054
…………….
14 B A X DISK 04-1月 -07 1 1 NO TAG20070104T083259
15 B A X DISK 04-1月 -07 1 1 NO TAG20070104T083259
79 B 0 A DISK 12-1月 -07 1 1 NO TAG20070112T135430
80 B 1 A DISK 12-1月 -07 1 1 NO TAG20070112T135540
B 表示 backup
F 表示 FULL
A 表示 archive log
0 1 表示 incremental backup
S 說明備份狀态 (A AVAILABLE X EXPIRED )
如果我們進行OPEN RESETLOGS方式恢複資料庫,RMAN将會記錄一個标記 (INCARNATION)。我們在做增量備份的時候,可以以目前的或者以前的标記做為基礎;如果保留了足夠的歸檔日志檔案,我們也可以以目前的或者以前的标記進行恢複reset database to incarnation 1;關于這方面恢複我們将在以後進行詳細示例闡述。
RMAN> LIST INCARNATION;
如果這冊了多個資料庫我們用帶有OF DATABASE參數的指令來差別不同資料庫。
RMAN> LIST INCARNATION OF DATABASE prod3;
RMAN> LIST INCARNATION OF DATABASE;
DB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time
------- ------- -------- ---------------- ------ ---------- ----------
1 1 RDBMS 774627068 PARENT 1 21-OCT-03
2 2 RDBMS 774627068 CURRENT 173832 21-OCT-03
REPORT指令:
報告需要備份的檔案:
我們首先要執行交叉校驗,然後可以利用REPORT指令報告需要備份的,RMAN根據我們的備份保留政策來給出結果。
CROSSCHECK BACKUP; # crosschecks backup sets and proxy copies
CROSSCHECK COPY; # crosschecks only disk copies of archived redo logs, datafiles and control file
RMAN>REPORT NEED BACKUP;
RMAN 保留政策将應用于該指令
将 RMAN 保留政策設定為備援 1
檔案備援備份少于1個
檔案 #bkps 名稱
---- ----- -----------------------------------------------------
5 0 E:\ORACLE\ORADATA\ROME\TEST.DBF
我們也可以給出DAYS參數來按照我們的要求時間讓RMAN給出需要備份的結果。如下例:
REPORT NEED BACKUP DAYS = 1 DATABASE; # needs min 1 days of logs to recover
REPORT NEED BACKUP DAYS = 10 TABLESPACE SYSTEM;
REPORT NEED BACKUP DAYS = 5 DATAFILE '…/tools01.dbf';
我們也可以報告那些檔案需要進行增量備份:
REPORT NEED BACKUP INCREMENTAL = 1 DATABASE;
REPORT NEED BACKUP INCREMENTAL = 3 TABLESPACE SYSTEM;
REPORT NEED BACKUP INCREMENTAL = 5 DATAFILE '…/users01.dbf';
報告過期備份:
CROSSCHECK BACKUP;
# lists backups that not needed to recover the database to within last week
REPORT OBSOLETE RECOVERY WINDOW OF 7 DAYS;
# lists backups that are superfluous because more than 2 copies are on tape
REPORT OBSOLETE REDUNDANCY = 2 DEVICE TYPE sbt;
ORPHAN參數報告在同一個标記 (INCARNATION)中間斷的備份,前一個備份和後一個備份不連續,也就是說同一個标記(INCARNATION)中兩個備份中間有被删除的備份。
REPORT OBSOLETE ORPHAN;
删除過期備份:
# delete obsolete backups displayed when you issue REPORT OBSOLETE
DELETE OBSOLETE;
# delete obsolete backups according to a specified recovery window
DELETE OBSOLETE RECOVERY WINDOW OF 7 DAYS;
# delete obsolete backups according to a specified redundancy
DELETE OBSOLETE REDUNDANCY = 2;
報告資料庫方案:
REPORT SCHEMA AT TIME 'SYSDATE-14'; # schema as it was two weeks ago
REPORT SCHEMA AT SCN 1000; # schema as it was at scn 1000
REPORT SCHEMA AT SEQUENCE 100 THREAD 1; # schema as it was at sequence 100
REPORT SCHEMA AT SCN 1000;
本文轉自 abc3486389 51CTO部落格,原文連結:http://blog.51cto.com/1336014/1436941