| 維度 | 說明 |
|---|---|
| 硬體級 | 雙機容錯、磁碟鏡像、RAID,硬體故障自動切換 |
| 軟體級 | 資料寫入磁帶、磁碟、TSM 等可移動介質,本文重點 |
| 特性 | 不啟用前滾 (Circular Logging) | 啟用前滾 (Archive Logging) |
|---|---|---|
| 恢復點 | 僅能恢復至備份完成時刻 | 可恢復至任意時間點(備份後至今) |
| 備份類型 | 僅支援離線全庫備份 | 支援線上備份、表空間級備份、增量/差異備份 |
| 交易日誌 | 循環覆寫,不保留歷史 | 歸檔保留,配合 ROLLFORWARD 重做 |
BACKUP DATABASE <alias> TO <path> -- 離線全庫
BACKUP DATABASE <alias> TABLESPACE <ts> ONLINE TO <path> -- 線上表空間
BACKUP DATABASE <alias> INCREMENTAL TO <path> -- 增量
BACKUP DATABASE <alias> DELTA TO <path> -- 差異
SYSADM/SYSCTRL/SYSMAINT 權限。/dev/rmt0 (非倒帶)、/dev/rmt0.n (倒帶)。RESTORE DATABASE <target> FROM <path> [TAKEN AT <timestamp>]
RESTORE DATABASE <target> TABLESPACE <ts> FROM <path> [ONLINE]
RESTORE DATABASE <target> FROM <path> WITHOUT ROLLING FORWARD -- 禁止前滾,立即可用
ROLLFORWARD DATABASE <db> TO END OF LOGS AND STOP -- 完整前滾至最新
ROLLFORWARD DATABASE <db> TO <timestamp> AND STOP -- 點時間恢復
ROLLFORWARD DATABASE <db> TO END OF LOGS AND STOP TABLESPACE <ts> ONLINE -- 表空間線上前滾
ROLLFORWARD PENDING 狀態。NOT LOGGED LOB 欄位前滾時會被設為十六進位 0。RESTART DATABASE <alias>
斷電/崩潰後自動執行,利用日誌將資料庫帶入交易一致狀態。
UPDATE DB CFG FOR <db> USING LOGRETAIN RECOVERY
-- 或
UPDATE DB CFG FOR <db> USING USEREXIT ON
修改後需執行一次離線全庫備份,解除 BACKUP PENDING 狀態。
ALTER TABLESPACE <ts> DROPPED TABLE RECOVERY ONLIST HISTORY DROPPED TABLE ALL FOR <db> 取得 TABLEID 與 DDL。RECOVER DROPPED TABLE <tableid> TO <path> 導出資料,再 IMPORT 入重建表。RESTORE ... WITHOUT ROLLING FORWARD 至測試庫)。NUM_DB_BACKUPS、REC_HIS_RETENTN 自動清理歷史。BACKUP PENDING、鎖升級、日誌空間。