Oracle 提供三種標準備份模式,按層面劃分:
EXP/IMP(Data Pump 為現代替代),提取邏輯物件定義與資料。ARCHIVELOG 模式運行時,線上備份資料檔與歸檔日誌。| 模式 | 範圍 | 典型指令 |
|---|---|---|
| Table (T) | 指定表 | exp user/pwd@db tables=emp,dept file=exp.dmp |
| User (U) | 指定用戶所有物件 | exp user/pwd@db owner=scott file=scott.dmp |
| Full (F) | 整個資料庫 | exp system/pwd@db full=y file=full.dmp |
inctype=completeinctype=incrementalinctype=cumulative週一:完全導出 (A)
週二:增量 (B) 週三:增量 (C) 週四:增量 (D)
週五:累計 (E) 週六:增量 (F) 週日:增量 (G)
-- 週日災難恢復順序:
1. CREATE DATABASE 重建結構
2. 建立大型 UNDO 表空間
3. 完全導入 A
4. 累計導入 E
5. 最新增量導入 F (或 G)
1. 所有資料檔 (.dbf)
2. 所有控制檔 (.ctl)
3. 所有線上 Redo Log 檔
4. 參數檔 (init.ora / spfile) -- 可選但建議備份
-- 1. 正常關閉
$ sqlplus / as sysdba
SQL> SHUTDOWN IMMEDIATE;
-- 2. OS 層複製檔案至備份目錄
$ cp /oradata/orcl/*.dbf /backup/cold_20240115/
$ cp /oradata/orcl/*.ctl /backup/cold_20240115/
$ cp /oradata/orcl/*.log /backup/cold_20240115/
$ cp $ORACLE_HOME/dbs/init*.ora /backup/cold_20240115/
-- 3. 重啟資料庫
SQL> STARTUP;
前置條件:資料庫必須運行於 ARCHIVELOG 模式,且需預留足夠歸檔空間。
ALTER TABLESPACE users BEGIN BACKUP; 進入備份模式(記錄 SCN,產生額外 Redo)ALTER TABLESPACE users END BACKUP; 結束備份模式備份完成後,必須同步備份控制檔(ALTER DATABASE BACKUP CONTROLFILE TO TRACE)與歸檔日誌,才能構成完整可恢復集合。
| 場景 | 推薦方案 |
|---|---|
| 開發/測試環境、小型資料庫、需跨版本遷移 | 邏輯備份 |
| 生產環境、允許固定停機窗口、追求最簡單恢復 | 冷備份 |
| 7×24 生產核心系統、需 RPO 接近 0、配合 DG/ASM | 熱備份 + RMAN |
現代生產環境強烈建議以 RMAN** 為核心**,整合熱備份、增量備份、區塊變更追蹤、壓縮加密等企業級特性,構建分級備份策略(L0 完整 + L1 差異/累計),並定期演練恢復流程。