SMON (System Monitor) 與 ARCH (Archiver) 常被 DBA 忽視,實則關鍵影響資料安全與效能。善用特性可減少大量人工運維。
表空間屬性 PCTINCREASE = 0 時,**SMON 停止對該表空間執行碎片合併**。此時需人工 EXP/IMP 或 ALTER TABLESPACE ... COALESCE 整理。
建議: 除特殊需求 (如精確控制擴展大小),**勿設為 0**。讓 SMON 自動管理碎片。注意:PCTINCREASE=0 不影響執行個體恢復功能。
LGWR 切換需等待歸檔完成,**頻繁大量 DML 導致頻繁 Log Switch → ARCH 啟動頻繬 → 資料庫暫時掛起 → 效能抖動**。
LOG_ARCHIVE_MAX_PROCESSES = n (n>1),啟動時建立多進程Redo Log 越大 → Log Switch 越不頻繁 → ARCH 啟動間隔越長 → 效能衝擊越小。建議單組 Redo Log 容納 15~30 分鐘產生量。
ALTER TABLE ... NOLOGGING、INSERT /*+ APPEND */、CREATE INDEX ... NOLOGGING 減少 Redo 產生| 維度 | SMON | ARCH |
|---|---|---|
| 觸發條件 | 啟動時、定期、空間碎片 | Log Switch (僅 ARCHIVELOG) |
| 核心產出 | 碎片合併、執行個體恢復 | 歸檔 Redo Log (備份/恢復基石) |
| 關鍵參數 | PCTINCREASE | LOG_ARCHIVE_MAX_PROCESSES, Redo Log Size |
| 常見誤區 | 設 PCTINCREASE=0 以為省事 | 單一 ARCH 導致 Log Switch 等待 |
SMON 守護空間與資料一致性,ARCH 守護可恢復性。靈活調校兩者參數,遠比單純 SQL 調優更能從根本提升系統穩定度與效能。DBA 請給這兩個「小巨人」應有的重視。