ORACLE REDO LOG

ORACLE REDO LOG GİRİş

Oracle’da veri girişleri direk olarak veritabanı dosyalarına yapılmaz.
İlk önce veriler redo log denilen dosyalara yazılır. Daha sonra da
belirli işlemlerden sonra veritabanı dosyalarına yazılır.

Redo log dosyaları minumum 2 veya daha fazla olabilir. Yoğun
trafiğe sahip databaselerde 2 redo log dosyası var ise veri girişleri
ve update işlemleri sırasına sık sık “Thread 1 cannot allocate new log,sequence”
hatası alırsınız.

LGWR (Log Writer): Bufferdaki redo bilgilerini redo log dosyasına yazmakla
yükümlüdür. Ek olarakda redo log dosyalarının statulerini günceller.

LGWR, redo log dosyaları dolduğunda bir sonraki redo log dosyasının
veritabanı dosyalarına yazılıp yazılmadığını ve arşivlenip arşivlenmediğini kontrol eder ve
yeni redo log dosyasına geÇer. Bu sırada bir önceki redo log dosyasının
statusunu CURRENT dan ACTIVE Çeker. Devamında DBWR (Database Writer)’a
Checkpoint işlemini yapması iÇin bilgi verir . DBWR Checkpoint işlemini tamamlayıp,
redo loglardaki datayı veritabanı dosyalarına yazıp CKPT processini Çağırır.
CKPT işlemi ise veritabanı dosyalarının header bilgisini ve statusunu gunceller.
Bu işlemleri tamamladıktan sonra LGWR işlemini Çağırır. LGWR de redo log
statu bilgisini ACTIVE‘den INACTIVE‘e Çeker.
Tüm bu işlemlerden sonra redo log dosyası tekrar kullanıma aÇılmış olur.
şunu da unutmamak gerekir bir birim zamanda sadece bir tane redo log dosyasına
yazılma işlemi yapılabilir.

Bir sonraki makalelerde görüşmek dileğiyle,
Tayfur BÖLER
Database Administrator