RMAN - command & env option
RMAN Command:- backup-- 備份整個數據庫
backup database; - list-- 列出所有的備份數據信息
list backup; - delete
- change
-- 刪除不再需要的備份集
RMAN> delete backupset 4;
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=9 設備類型=DISK
備份片段列表
BP 關鍵字 BS 關鍵字 Pc# Cp# 狀態 設備類型段名稱
------- ------- --- --- ----------- ----------- ----------
4 4 1 1 AVAILABLE DISK E:\ORCL_20121025_04NOKL8D_1_1.BAP
是否確定要刪除以上對象 (輸入 YES 或 NO)?
RMAN> delete backupset 4;
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=9 設備類型=DISK
備份片段列表
BP 關鍵字 BS 關鍵字 Pc# Cp# 狀態 設備類型段名稱
------- ------- --- --- ----------- ----------- ----------
4 4 1 1 AVAILABLE DISK E:\ORCL_20121025_04NOKL8D_1_1.BAP
是否確定要刪除以上對象 (輸入 YES 或 NO)?
-- 如果物理上直接刪除一個備份文件,則delete失敗
RMAN-06207: 警告: 由于狀態不匹配, 所以不能刪除 1 對象 (對于 DISK 通道)。
RMAN-06208: 請用 CROSSCHECK 命令修正狀態
RMAN-06210: 不匹配對象的列表
RMAN-06211: ==========================
RMAN-06212: 對象類型 文件名/句柄
RMAN-06213: --------------- ---------------------------------------------------
RMAN-06214: Backup Piece E:\ORCL_20121025_04NOKL8D_1_1.BAP
--這個時候需要change命令
RMAN> change backupset 4 UNAVAILABLE;
不能使用更改的備份片段
備份片段句柄=E:\ORCL_20121025_04NOKL8D_1_1.BAP RECID=4 STAMP=797594895
1 對象已更改為 UNAVAILABLE 狀態
RMAN-06207: 警告: 由于狀態不匹配, 所以不能刪除 1 對象 (對于 DISK 通道)。
RMAN-06208: 請用 CROSSCHECK 命令修正狀態
RMAN-06210: 不匹配對象的列表
RMAN-06211: ==========================
RMAN-06212: 對象類型 文件名/句柄
RMAN-06213: --------------- ---------------------------------------------------
RMAN-06214: Backup Piece E:\ORCL_20121025_04NOKL8D_1_1.BAP
--這個時候需要change命令
RMAN> change backupset 4 UNAVAILABLE;
不能使用更改的備份片段
備份片段句柄=E:\ORCL_20121025_04NOKL8D_1_1.BAP RECID=4 STAMP=797594895
1 對象已更改為 UNAVAILABLE 狀態
在狀態為AVAILABLE的情況下,不可以刪除備份集,需要優先將備份集更新為UNAVAILABLE,才可以刪除...
在快速閃回區的備份集,不可以更新狀態為UNAVAILABLE。
-- 通過crosscheck可以檢查備份集和備份片是否一致,如果備份片被物理刪除,則Oracle會自動更新備份片狀態為:EXPIRED
RMAN> crosscheck backupset 2;
RMAN> crosscheck backupset 2;
- reportRMAN> report schema;
db_unique_name 為 ORCL 的數據庫的數據庫方案報表
永久數據文件列表
===========================
文件大小 (MB) 表空間 回退段數據文件名稱
---- -------- -------------------- ------- ------------------------
1 690 SYSTEM *** D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF
2 540 SYSAUX *** D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF
3 90 UNDOTBS1 *** D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF
4 5 USERS *** D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
5 50 sample *** D:\APP\ADMINISTRATOR\ORADATA\ORCL\SAMPLE.DBF
臨時文件列表
=======================
文件大小 (MB) 表空間 最大大小 (MB) 臨時文件名稱
---- -------- -------------------- ----------- --------------------
1 29 TEMP 32767 D:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP01.DBF
- configure
- -- 保留冗余備份,默認為一份
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
-- 不會刪除以前的備份,只有在使用以下命令,才會刪除以前的冗余
delete obsolete
-- 列出所有的obsolete文檔
RMAN> report obsolete
-- 保留7個版本有效的
CONFIGURE RETENTION POLICY TO REDUNDANCY 7;
- run{} 類似C語言 main{}RMAN> run{
2> configure retention poilcy to redundancy 7;
3> backup as compressed backupset database;
4> delete noprompt obsolete;
5> } - scriptRMAN> create script r1{
2> configure retention policy to redundancy 1;
3> backup as compressed backupset database;
4> delete noprompt obsolete;
5> }
已創建腳本 r1
-- 列出所有的腳本
RMAN> list script names;
恢復目錄中存儲腳本的列表
目標數據庫 ORCL 的腳本
腳本名
說明
--------------------
r1
-- 執行腳本 (必須在run的塊中執行)
RMAN> run{
2> execute script r1;
3> }
RMAN> run{
2> execute script r1;
3> }
-- 刪除腳本
RMAN> delete script r1;
RMAN> delete script r1;
-- 打印/輸出 腳本
RMAN> print script r1;
正在打印存儲的腳本: r1
{
configure retention policy to redundancy 1;
backup as compressed backupset database;
delete noprompt obsolete;
}
RMAN> print script r1;
正在打印存儲的腳本: r1
{
configure retention policy to redundancy 1;
backup as compressed backupset database;
delete noprompt obsolete;
}
-- 編輯腳本
-- 輸出/打印 腳本
RMAN> replace script r1 to file 'c:\a.txt';
-- =====編輯腳本======
-- 替換腳本
RMAN> replace script r1 from file 'c:\a.txt';
-- 輸出/打印 腳本
RMAN> replace script r1 to file 'c:\a.txt';
-- =====編輯腳本======
-- 替換腳本
RMAN> replace script r1 from file 'c:\a.txt';
在nocatalog的時候,是無法創建腳本的。
-- 保留備份,一般按時間計算 (例如下面,更改保留策略為:保留備份兩周時間)
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;
舊的 RMAN 配置參數:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
新的 RMAN 配置參數:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;
已成功存儲新的 RMAN 配置參數
正在啟動全部恢復目錄的 resync
完成全部 resync
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;
舊的 RMAN 配置參數:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
新的 RMAN 配置參數:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;
已成功存儲新的 RMAN 配置參數
正在啟動全部恢復目錄的 resync
完成全部 resync
-- 已經備份的歸檔日志,不再備份
backup archivelog all not backed up;
-- 直接用參數 - 效果一樣
CONFIGURE BACKUP OPTIMIZATION ON;
backup archivelog all not backed up;
-- 直接用參數 - 效果一樣
CONFIGURE BACKUP OPTIMIZATION ON;
-- 使用缺省值
CONFIGURE BACKUP OPTIMIZATION CLEAR;
CONFIGURE BACKUP OPTIMIZATION CLEAR;
-- 在多CPU的情況下,可以多進程進行備份
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET;
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET;
- allocate{
configure retention policy to redundancy 1;
allocate channel c1 device type disk ;
allocate channel c2 device type disk ;
backup as compressed backupset full database;
release channel c1;
}
-- 備份鏡像 - 如果在閃回恢復區,是不支持多份鏡像文件的
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;