| 技術 | 引入版本 | 基礎機制 | 適用場景 |
|---|---|---|---|
| 閃回查詢 | 9i | Undo 數據 | 查詢過去時間點數據 |
| 閃回版本查詢 | 10g | Undo 數據 | 追蹤行版本變更歷史 |
| 閃回事務查詢 | 10g | Undo 數據 | 定位具體事務及 SQL |
| 閃回表 | 10g | Undo 數據 | 單表/表組快速恢復 |
| 閃回刪除 | 10g | 虛擬回收站 | DROP 表對象恢復 |
| 閃回數據庫 | 10g | 閃回日志 | 整庫時間點恢復,替代不完全恢復 |
-- 1. 設置恢復區
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE = 10G;
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST = '/u01/fra';
-- 2. 啟用閃回數據庫
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE FLASHBACK ON;
ALTER DATABASE OPEN;
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
FLASHBACK DATABASE TO TIMESTAMP TO_TIMESTAMP('2024-06-15 10:00:00','YYYY-MM-DD HH24:MI:SS');
ALTER DATABASE OPEN RESETLOGS;
FLASHBACK DATABASE TO SCN 123456789;
SELECT * FROM V$FLASHBACK_DATABASE_LOG;
SELECT * FROM V$RECOVERY_FILE_DEST;
| 適用 | 不適用 |
|---|---|
| 截斷大表、批任務失誤、誤刪用戶/Schema | 介質故障(需傳統恢復)、邏輯錯誤超出保留窗口 |
Enterprise Manager 提供圖形化「閃回數據庫」向導,可視化配置保留目標、監控日志生成速率、一鍵發起閃回操作。
閃回數據庫是 10g 標誌性 HA 特性,將「時間點恢復」從「小時級」壓縮至「分鐘級」,配合快速恢復區統一管理,成為現代 Oracle HA 體系的核心組件。