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

Oracle 歸檔日誌模式詳解:非歸檔 vs 歸檔、ARCn 進程、參數管理

     編輯:Oracle 教學

Oracle 歸檔日誌模式詳解:非歸檔 vs 歸檔、ARCn 進程、參數管理

Oracle 資料庫提供兩種重做日誌運作模式:**非歸檔模式** 與 **歸檔模式**。選擇哪種模式直接決定資料庫的可恢復性等級與備份策略。

核心概念

  • 重做日誌檔 : 循環寫入,記錄所有資料變更。寫滿後切換至下一組。
  • 歸檔 : 為防止重做日誌被覆蓋,將已寫滿的日誌組 (Archived Redo Log) 複製保存至指定位置。
  • 歸檔日誌 : 完整記錄資料庫所有修改歷史,是時間點恢復 (PITR)、Data Guard 同步、串流複寫的基礎。

兩種模式對比

維度非歸檔模式 (NOARCHIVELOG)歸檔模式 (ARCHIVELOG)
重做日誌覆蓋允許直接覆蓋必須歸檔成功才能覆蓋
資料恢復能力僅支援至最後一次冷備份支援任意時間點恢復 (PITR)
熱備份不支援支援 (RMAN、Begin/End Backup)
Data Guard / 串流複寫不可用必備條件
儲存成本低需規劃歸檔空間、刪除策略
適用場景測試、開發、可重建資料生產、核心業務、高可用架構

歸檔進程 ARCn

  • 由後台進程 ARCn (Archiver Processes) 自動執行歸檔複製。
  • 最大啟動數由參數 LOG_ARCHIVE_MAX_PROCESSES 控制 (範圍 1-10,舊版參數名 LOG_ARCHIVE_PROCESSES)。
  • 查詢當前值:SELECT name, value FROM v$parameter WHERE name='log_archive_max_processes';
  • 動態調整:ALTER SYSTEM SET log_archive_max_processes=10 SCOPE=BOTH; (需重啟生效 SCOPE=SPFILE,或動態 SCOPE=MEMORY)。

關鍵參數與操作

-- 啟用歸檔模式 (需資料庫 MOUNT 狀態)
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;

-- 設定歸檔目的地 (可多路鏡像)
ALTER SYSTEM SET log_archive_dest_1='LOCATION=/u01/archivelog' SCOPE=BOTH;
ALTER SYSTEM SET log_archive_dest_2='LOCATION=/u02/archivelog' SCOPE=BOTH;
ALTER SYSTEM SET log_archive_format='arch_%t_%s_%r.dbf' SCOPE=SPFILE; -- 檔名格式

-- 手動觸發歸檔 (切換日誌)
ALTER SYSTEM ARCHIVE LOG CURRENT;
-- 或
ALTER SYSTEM SWITCH LOGFILE;

-- 查看歸檔狀態
ARCHIVE LOG LIST;
SELECT * FROM v$archive_dest_status;
SELECT * FROM v$archived_log ORDER BY completion_time DESC;

SCOPE 參數說明

  • SCOPE=MEMORY:僅修改當前執行實例參數,重啟失效。
  • SCOPE=SPFILE:修改伺服器參數檔,下次啟動生效。
  • SCOPE=BOTH:同時修改當前實例與 SPFILE (需 SPFILE 存在)。

歸檔空間管理建議

  1. 設定 DB_RECOVERY_FILE_DEST (Fast Recovery Area) 統一管理歸檔、備份、控制檔備份,配合 DB_RECOVERY_FILE_DEST_SIZE 限制總大小。
  2. 配置 RMAN 歸檔刪除策略:CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY BACKED UP 2 TIMES TO DEVICE TYPE DISK;
  3. 監控 V$FLASH_RECOVERY_AREA_USAGE 空間使用率,設定告警閾值 (如 80%)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved