首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 資料庫備份基礎知識體系:結構、日誌、備份模式與角色管理

     編輯:Oracle 資料庫基礎

Oracle 備份保護的四大核心結構

Oracle 透過四種結構協同保護資料:

  1. 資料庫備份:構成資料庫的物理檔案(資料檔、控制檔、參數檔)的作業系統層級備份
  2. 線上重做日誌:記錄所有變更的循環日誌,由 LGWR 背景進程即時寫入
  3. 回滾段 / Undo:儲存未提交交易的舊值,用於崩潰恢復時回滾非提交變更
  4. 控制檔:記錄資料庫物理結構狀態(資料檔、日誌檔、檢查點資訊),恢復時的導航圖

線上重做日誌架構

  • 每個實例擁有一組線上重做日誌(至少 2 組,每組多個成員)
  • 日誌檔循環使用:填滿 → 切換 → 覆寫最舊組
  • 日誌條目記錄資料塊變更向量,支援前滾恢復
  • V$LOG、V$LOGFILE、V$LOG_HISTORY 監控日誌狀態

歸檔日誌:備份恢復的關鍵

當線上日誌填滿需切換時,若啟用歸檔模式,ARCh 進程將填滿的日誌組複製為歸檔日誌檔案。

歸檔日誌的兩大用途

  1. 介質恢復保障:配合備份檔案,可恢復所有已提交交易,達到零資料遺失 (RPO=0)
  2. 線上熱備份基礎:資料庫開啟狀態下備份,歸檔日誌記錄備份期間的所有變更,確保備份一致性

兩種資料庫運行模式

啟用歸檔模式步驟

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;
-- 驗證
ARCHIVE LOG LIST;
SELECT LOG_MODE FROM V$DATABASE;

Oracle 備份分類與特性對比

邏輯備份

  • 工具:Data Pump (expdp/impdp)、傳統 exp/imp
  • 內容:資料庫物件定義 + 資料(SQL 層面)
  • 優點:跨版本/平台遷移、可篩選物件、檔案可攜帶
  • 缺點:大資料量慢、不支援區塊級恢復、無法直接用於介質恢復

物理備份

  • 內容:資料檔、控制檔、日誌檔、參數檔的區塊級複製
  • 分類:
    • 冷備份:資料庫正常關閉 → 複製所有檔案 → 開啟。最簡單、最安全、需停機
    • 熱備份:資料庫開啟 (ARCHIVELOG) → BEGIN BACKUP → 複製檔案 → END BACKUP。零停機、需歸檔日誌支援

三種備份模式特性對比表

模式歸檔功能備份能力恢復能力適用場景
NOARCHIVELOG關閉僅冷備份僅能恢復至最後一次冷備份點測試環境、可容忍資料遺失的非核心系統
ARCHIVELOG開啟冷/熱備份皆可任意時間點恢復 (PITR)所有生產環境核心系統

RMAN 核心優勢

  • 區塊級壓縮備份:僅備份已變更區塊,跳過空白區塊
  • 增量備份:僅備份自上次備份後變更的區塊,支援累積/差異模式
  • 腳本化自動化:儲存於恢復目錄,可重複調用、排程執行
  • 備份記錄與報表:LIST、REPORT 指令查詢備份狀態、過期、冗餘
  • 恢復目錄:獨立資料庫儲存備份中繼資料,控制檔損壞仍可恢復
  • 並行處理:多通道同時讀寫,充分利用 CPU/IO 頻寬
  • 第三方媒體管理整合:支援 Veritas、NetBackup、TSM 等磁帶庫
  • 資料庫複製:從備份建立測試/開發環境副本
  • 備份驗證:VALIDATE 檢查備份可用性、壞塊偵測
  • 交叉檢查:CROSSCHECK 驗證備份件與目錄記錄一致性

Oracle 角色管理與安全性基礎

資料庫安全性四層防線:

  1. 認證:用戶名/密碼、OS 認證、網路服務認證、PKI/SSL、Kerberos、RADIUS
  2. 授權:系統權限、物件權限、角色(角色可授予角色)、最小權限原則
  3. 存取控制:視圖限制行/欄、VPD (Virtual Private Database) 細粒度行級安全、OLS (Oracle Label Security) 標籤安全
  4. 稽核:標準稽核、精細稽核 (FGA)、統一稽核 (12c+)、Syslog 整合

常用角色管理指令

-- 建立角色
CREATE ROLE APP_READONLY;
GRANT SELECT ON SCHEMA.TABLE TO APP_READONLY;

-- 授予角色給用戶
GRANT APP_READONLY TO USER1;

-- 密碼驗證函數
CREATE PROFILE SECURE_PROFILE LIMIT
  PASSWORD_LIFE_TIME 90
  PASSWORD_REUSE_TIME 365
  PASSWORD_VERIFY_FUNCTION ORA12C_VERIFY_FUNCTION;
ALTER USER USER1 PROFILE SECURE_PROFILE;

總結:備份策略制定核心原則

  1. 生產環境強制 ARCHIVELOG + RMAN
  2. RPO=0 需求:每日完整備份 + 每小時增量備份 + 即時歸檔日誌備份至異地
  3. RTO 需求:定期演練恢復、預先腳本化、備份驗證自動化
  4. 3-2-1 原則:3 份副本、2 種媒體、1 份異地
  5. 備份內容完整性:資料檔 + 控制檔 + 參數檔 + 歸檔日誌 + 密碼檔
  6. 加密與壓縮:RMAN BACKUP AS COMPRESSED BACKUPSET + CONFIGURE ENCRYPTION FOR DATABASE ON

備份不只是「備份」,而是「可驗證、可恢復、有演練」的完整體系。沒有恢復演練的備份,只是佔用磁碟空間的檔案。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
模式類型恢復特性停機需求儲存空間複雜度
Export (Data Pump)邏輯物件級恢復至匯出時間點無中(壓縮後)低
冷備份物理關閉點恢復;若 ARCHIVELOG 可任意時間點是大(原始大小)低
熱備份物理任意時間點恢復 (PITR)無大(原始大小)中
RMAN 完整備份物理任意時間點、區塊級、增量備份無可壓縮、去重中高
RMAN 增量備份物理結合完整備份做任意時間點無小(僅變更區塊)中高