備份分類總覽
| 類型 | 定義 | 業務影響 | 恢復粒度 | 典型工具 |
| 邏輯備份 | 匯出 SQL/二進位邏輯資料 | 無停機 (可能影響效能) | 表/結構/使用者 | exp/imp, expdp/impdp |
| 物理冷備份 | 關機複製資料/控制/重做檔 | 完全停機 | 整個資料庫 | cp/rsync/備份軟體 |
| 物理熱備份 | 開機模式複製檔案 + 歸檔日誌 | 無停機 | 表空間/資料檔/區塊 | RMAN, BEGIN BACKUP |
一、邏輯備份:Exp/Imp 與 Data Pump
三種匯出模式
- 表模式 (T):`exp user/pwd tables=emp,dept file=exp.dmp`
- 使用者模式 (U):`exp user/pwd owner=scott file=scott.dmp`
- 全庫模式 (Full):`exp system/pwd full=y file=full.dmp`
增量匯出策略
| 類型 | 範圍 | 指令範例 | 適用排程 |
| 完全 | 整個資料庫 | `exp system/pwd inctype=complete file=mon.dmp` | 週一 |
| 增量 | 上次備份後變更 | `exp system/pwd inctype=incremental file=tue.dmp` | 週二~四 |
| 累積 | 上次完全後所有變更 | `exp system/pwd inctype=cumulative file=fri.dmp` | 週五 |
恢復流程 (週日災難)
1. CREATE DATABASE 重建結構
2. 建立大型 UNDO 表空間
3. imp system/pwd inctype=RESTORE full=y file=mon.dmp (完全)
4. imp system/pwd inctype=RESTORE full=y file=fri.dmp (累積)
5. imp system/pwd inctype=RESTORE full=y file=sat.dmp (最近增量)
二、物理冷備份 (Offline Backup)
優點
- 極速 (僅檔案複製)
- 簡單可靠、易歸檔 (磁帶/異地)
- 時間點恢復精確
- 可結合歸檔日誌做「最新狀態」恢復
缺點
- 必須停機 (影響可用性)
- 單獨使用只能恢復到備份時間點
- 無法表級/使用者級恢復
- 磁碟空間不足時複製磁帶極慢
必備檔案清單
- 所有資料檔
- 所有控制檔
- 所有線上重做日誌檔
- 參數檔 (spfile/init.ora) - 可選但建議
標準流程
-- 1. 正常關機
sqlplus / as sysdba
SHUTDOWN IMMEDIATE;
-- 2. 複製檔案 (OS 指令)
cp /u01/oradata/ORCL/*.dbf /backup/cold/
cp /u01/oradata/ORCL/*.ctl /backup/cold/
cp /u01/oradata/ORCL/redo*.log /backup/cold/
cp $ORACLE_HOME/dbs/spfileORCL.ora /backup/cold/
-- 3. 啟動資料庫
STARTUP;
三、物理熱備份 (Online Backup / RMAN)
前置條件
- 資料庫必須運行於 ARCHIVELOG 模式:
`ALTER DATABASE ARCHIVELOG;`
- 低負載時段執行
- 充足備份儲存空間
熱備份三階段
- 表空間級備份 (BEGIN/END BACKUP)
`ALTER TABLESPACE users BEGIN BACKUP;`
`cp /u01/oradata/ORCL/users01.dbf /backup/hot/`
`ALTER TABLESPACE users END BACKUP;`
- 歸檔日誌備份
`ALTER SYSTEM ARCHIVE LOG CURRENT;` (切換日誌)
`cp /u01/oradata/ORCL/arch/*.arc /backup/hot/arch/`
- 控制檔備份
`ALTER DATABASE BACKUP CONTROLFILE TO '/backup/hot/control.bak';`
RMAN 現代化備份 (強烈推薦)
-- 完整備份含歸檔
BACKUP DATABASE PLUS ARCHIVELOG;
-- 增量備份 (Level 0 基準 + Level 1 差異)
BACKUP INCREMENTAL LEVEL 0 DATABASE;
BACKUP INCREMENTAL LEVEL 1 DATABASE;
-- 表空間備份
BACKUP TABLESPACE users;
-- 恢復範例
RESTORE DATABASE;
RECOVER DATABASE;
四、雙機熱備 / Data Guard 架構
廣義 vs 狹義
- 廣義:兩台伺服器互備、共享儲存/資料同步、自動故障轉移
- 狹義:Active/Standby 模式、共享儲存、心跳偵測、Standby 啟動接管
典型模式
| 模式 | 架構 | 特點 |
| Active/Standby | 單一 Primary、一或多 Standby | 最常見、資源利用率 50% |
| Active/Active | 雙 Primary (需應用支援) | 資源利用率 100%、衝突解決複雜 |
| 多機叢集 | RAC + Data Guard | 最高可用性、成本最高 |
核心組件
- 共享儲存 (SAN/NAS) 或 Data Guard 遠端同步
- 叢集軟體 (Oracle Clusterware, Veritas, Linux HA)
- 心跳監控、虛擬 IP (VIP) 漂移、應用啟動腳本
策略選擇建議
- 中小型、可接受停機窗口 → 冷備份 + 歸檔日誌
- 7x24、RTO < 1小時 → RMAN 熱備份 + 歸檔日誌
- 零資料遺失 (RPO=0)、自動故障轉移 → Data Guard 同步模式 (Maximum Availability)
- 異地災備、跨機房 → Data Guard 非同步模式 (Maximum Performance)
- 極大資料庫 (TB/PB) → RMAN 增量備份 + 存儲快照 (NetApp/EMC/Hitachi)