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

Oracle Redo Log Group 尺寸調整:新建大 Group → 切換 → 刪舊 → 重建標準流程

     編輯:Oracle 資料庫基礎

誤區釐清

標題雖寫「歸檔日誌大小修改」,實操對象為線上 Redo Log Group(Online Redo Log),歸檔日誌為 Redo 封存後產生,大小由 Redo Group 決定。

場景

現有 3 Group(Group 1/2/3),各 1 Member,大小 1MB。需調整為 10MB。

標準調整步驟

  1. 新增過渡 Group 4、5(目標大小 10MB)
ALTER DATABASE ADD LOGFILE GROUP 4 ('/u01/app/oracle/oradata/orcl/redo04.log') SIZE 10M;
ALTER DATABASE ADD LOGFILE GROUP 5 ('/u01/app/oracle/oradata/orcl/redo05.log') SIZE 10M;
  1. 強制切換至新 Group(執行兩次確保 Current 指向 Group 5)
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
  1. 刪除舊 Group 1/2/3(需為 INACTIVE/UNUSED 狀態)
ALTER DATABASE DROP LOGFILE GROUP 1;
ALTER DATABASE DROP LOGFILE GROUP 2;
ALTER DATABASE DROP LOGFILE GROUP 3;
  1. OS 刪除舊 Redo 檔案
rm /u01/app/oracle/oradata/orcl/redo01.log
rm /u01/app/oracle/oradata/orcl/redo02.log
rm /u01/app/oracle/oradata/orcl/redo03.log
  1. 重建 Group 1/2/3(目標大小 10MB)
ALTER DATABASE ADD LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01.log') SIZE 10M;
ALTER DATABASE ADD LOGFILE GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02.log') SIZE 10M;
ALTER DATABASE ADD LOGFILE GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03.log') SIZE 10M;
  1. 切換回新 Group 1/2/3(執行三次)
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
  1. 刪除過渡 Group 4/5 並清理 OS 檔案
ALTER DATABASE DROP LOGFILE GROUP 4;
ALTER DATABASE DROP LOGFILE GROUP 5;
rm /u01/app/oracle/oradata/orcl/redo04.log
rm /u01/app/oracle/oradata/orcl/redo05.log
  1. 備份控制檔
ALTER DATABASE BACKUP CONTROLFILE TO TRACE RESETLOGS;

關鍵檢查點

  • 每步驟後查詢 SELECT group#, status, bytes FROM v$log; 確認狀態流轉:CURRENT → ACTIVE → INACTIVE → UNUSED。
  • 歸檔模式下,DROP LOGFILE GROUP 需該 Group 已歸檔(ARCHIVED=YES)。
  • 若刪除報 ORA-01567(正在使用)或 ORA-00350(未歸檔),需再 SWITCH LOGFILE 或手動 ALTER SYSTEM ARCHIVE LOG CURRENT。

最佳實踐建議

  • 每 Group 至少 2 Members,置於不同磁碟/ASM Disk Group。
  • Redo 大小規劃:目標切換頻率 15-30 分鐘/次,避免過頻(Checkpoint 壓力)或過疏(恢復時間長)。
  • 調整前執行完整備份;調整後驗證 V$LOG、V$LOGFILE、V$LOG_HISTORY 正常。

結語

Redo Log Group 大小調整屬線上作業,遵循「新建→切換→刪舊→重建→切回→清理→備份控制檔」八步驟,風險可控。生產環境建議維護窗口執行,並準備回滾腳本。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved