-- 建立/取代腳本
RMAN> CREATE SCRIPT ALLOC_DISK {
ALLOCATE CHANNEL DEV1 TYPE DISK;
SETLIMIT CHANNEL DEV1 KBYTES 2097150 MAXOPENFILES 32 READRATE 200;
}
RMAN> REPLACE SCRIPT REL_DISK {
RELEASE CHANNEL DEV1;
}
RMAN> REPLACE SCRIPT BACKUP_DB_FULL {
EXECUTE SCRIPT ALLOC_DISK;
BACKUP ...;
EXECUTE SCRIPT REL_DISK;
}
-- 執行儲存腳本
RMAN> RUN { EXECUTE SCRIPT BACKUP_DB_FULL; }
腳本須在 RUN { ... } 區塊中呼叫。
V$BACKUP_CORRUPTION、V$COPY_CORRUPTION 取得壞塊資訊SET MAXCORRUPT FOR DATAFILE n TO m 允許跳過 m 個壞塊避免備份失敗RMAN> REPLACE SCRIPT BACKUP_DB_FULL {
EXECUTE SCRIPT ALLOC_DISK;
SET MAXCORRUPT FOR DATAFILE 1 TO 0; -- 0 表示遇壞塊即失敗
BACKUP ...;
EXECUTE SCRIPT REL_DISK;
}
通道 = RMAN 與目標資料庫的連接,啟動伺服器進程執行備份/還原。控制:
SETLIMIT READRATE)SETLIMIT KBYTES)SETLIMIT MAXOPENFILES)RMAN> LIST BACKUPSET OF DATAFILE 1;
-- 輸出備份集清單:Key、File、Type、LV、完成時間、Checkpoint SCN/Time