Oracle Frequent Redo Log Switches: Measurement and Redo Group Sizing
Measures switches per thread, separates archive/checkpoint pressure and plans controlled sizing with new redo groups.
Operational Safety & Risk Notice
This runbook contains operational intervention steps; several are write-impacting (KILL, terminate, DROP, RESIZE). Verify in a staging environment first, and apply sequentially in production with verification.
1. Symptom & Signals
- M41, iş yüküne göre olağandışı yükseliyor; alert log'da `checkpoint not complete` veya `cannot allocate new log` uyarıları olabilir.
- Arşivleme ve yedekleme trafiği artar. Tek başına switch sayısı olay değildir.
2. Business & Technical Impact
Sık switch; checkpoint, arşiv I/O'su ve yazma gecikmesini artırabilir. Standby apply veya FRA kullanımı etkilenebilir.
3. Diagnosis & Root-Cause Analysis
SELECT thread#, TRUNC(first_time,'HH24') AS hour_bucket, COUNT(*) AS switches
FROM v$log_history
WHERE first_time >= SYSDATE - 1
GROUP BY thread#, TRUNC(first_time,'HH24')
ORDER BY hour_bucket DESC, thread#;
SELECT thread#, group#, ROUND(bytes/1048576) AS size_mb, status, archived, members
FROM v$log ORDER BY thread#, group#;4. Remediation & Action Plan
-- Örnek, tek instance ve dosya sistemi; ASM/OMF/RAC'te uygun yolu ve thread'i seçin.
ALTER DATABASE ADD LOGFILE GROUP 4 ('/u02/oradata/DB/redo04.log') SIZE 2G;4. Kalıcı boyutlandırmayı yoğun saatte hedeflenen switch aralığına göre yapın; “her zaman saatte 4-6” gibi sabit hedef yerine throughput ve arşivleme gecikmesini esas alın. 12c/19c RAC'te her thread için yeterli grup ve uygun standby redo log sağlayın.
5. Verification & Health Checks
- İş yükü eşdeğerken switch hızı ve checkpoint/archiver uyarıları azaldı; standby apply ve FRA sağlıklı.
- Yeni grup statüleri normal, kaybolan/bozuk log yok.
6. Rollback & Contingency Plan
- Yeni grubun kaldırılması için önce `INACTIVE`/`ARCHIVED` ve yeterli alternatif grup koşullarını doğrulayın; yapılmış switch'ler geri alınmaz.
- Eski log gruplarını kaldırmadan önce planın geri dönüşünü sağlayacak şekilde değişikliği aşamalı yapın.