Oracle 閃回技術僅處理「邏輯資料變更」,從根本改變恢復模式:恢復耗時 = 製造錯誤耗時。相較傳統介質恢復,具備易用性、可用性、還原時間三大優勢。
| 功能 | 用途 | 依賴機制 |
|---|---|---|
| 閃回資料庫 | 整庫回退至過去時間點/SCN | 閃回日誌(RVWR 進程寫入快速恢復區) |
| 閃回刪除 | 從回收站還原 DROP 表 | 回收站 |
| 閃回表 | 單表回退至過去時間點 | UNDO 資料 |
| 閃回查詢 | 查詢過去時間點的資料快照 | UNDO 資料 |
| 閃回版本查詢 | 查看某列在一段時間內的所有版本 | UNDO 資料 |
| 閃回事務查詢 | 查看交易歷史與變更細節 | UNDO 資料 |
RVWR 背景進程維護)。TRUNCATE 表ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET = 4320;(單位:分鐘,此處 3 天)SHUTDOWN IMMEDIATE; STARTUP MOUNT;ALTER DATABASE FLASHBACK ON;ALTER DATABASE OPEN; 驗證 SELECT FLASHBACK_ON FROM V$DATABASE; 顯示 YES。-- 1. 記錄誤操作前時間 T1
-- 2. 執行誤操作(如 TRUNCATE)
-- 3. 關閉至 MOUNT:SHUTDOWN IMMEDIATE; STARTUP MOUNT;
-- 4. 閃回至 T1:FLASHBACK DATABASE TO TIMESTAMP TO_TIMESTAMP('...');
-- 5. 唯讀開啟驗證:ALTER DATABASE OPEN READ ONLY;
-- 6. 若未達預期,重複 3-5 步驟調整時間點
-- 7. 確認無誤後:ALTER DATABASE OPEN RESETLOGS; (之後無法再閃回至 RESETLOGS 前)
注意:
DB_FLASHBACK_RETENTION_TARGET為目標上限,若快速恢復區空間不足,舊閃回日誌可能被自動刪除,導致無法閃回至目標時間。