熱備份要求資料庫運行於歸檔模式,確保重做日誌完整保存,支援時間點恢復。
ALTER TABLESPACE users BEGIN BACKUP;
-- 複製資料檔
ALTER TABLESPACE users END BACKUP;
查詢 V$DATAFILE_HEADER.CHECKPOINT_CHANGE# 可見:BEGIN BACKUP 後檔頭 SCN 不再變化;即便執行 ALTER SYSTEM CHECKPOINT,該檔頭 SCN 仍維持原值;END BACKUP 後配合檢查點,SCN 才同步推進。
RMAN 讀取資料區塊時,直接記錄該區塊的 SCN 至備份集控制資訊(Ckp SCN),恢復時從該 SCN 應用日誌。檔頭 SCN 不受影響,避免了使用者管理模式的額外重做日誌產生(因資料區塊首次變更須寫入完整映像至重做日誌)。
ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '...';SELECT file_id, block_id, blocks FROM dba_extents WHERE segment_name='EMPLOYEES';
ALTER SYSTEM DUMP DATAFILE 5 BLOCK 81;
-- trace 檔中 scn: 0x0000.00086c4d (十進位 552013)
修改資料並觸發寫入後,重新 DUMP 可見區塊 SCN 遞增,印證區塊級 SCN 機制。
熱備份本質是「以 SCN 為錨點的時間點一致性」:使用者管理模式鎖定檔頭 SCN,RMAN 記錄區塊 SCN。RMAN 區塊級機制配合 10g BCT,實現了無干擾、高效能的增量備份,是現代 Oracle 備份策略的基石。