Yeni redo log dosyalarının üretimi için veritabanında “alter
database” yetkisinin bulunması gerekmektedir. Bir oracle veritabanında en fazla Maxlogfiles
parametresi kadar grup bulunabilinir.
Maxlogfile kayıtlarını görmek için: Show parameters
maxlogfiles;
Alter database add logfile ('/oracle/dbs/log1c.rdo',
'/oracle/dbs/log2c.rdo') size 5M;
Ayrıca, aşağıdaki sorguda olduğu gibi grubumuza bir numara
da atabiliriz. :
Alter database add logfile group 1 ('/oracle/dbs/log1c.rdo',
'/oracle/dbs/log2c.rdo') size 5M;
Redo Log Member Yaratılması
Alter database add logfile
member '/oracle/dbs/log3c.rdo' to group 1;
Ya da aşağıdaki gibi grup belirtmeden sadece dosya adları
belirtilerek de eklenebilinir.
Alter database add logfile
member '/oracle/dbs/log3c.rdo' to ('/oracle/dbs/log1c.rdo',
'/oracle/dbs/log2c.rdo')
Redo Log Dosyalarının Yerinin Değiştirilmesi ve
İsimlerinin değiştirilmesi:
1)
İlk olarak veritabanı kapatılır.
Shutdown;
2)
Redo log dosyaları yeni yerlerine taşınırlar.
mv /diska/logs/log1a.rdo
/diskc/logs/log1c.rdo
mv /diska/logs/log2a.rdo
/diskc/logs/log2c.rdo
3)
Veritabanı başlatılır ancak açılmaz. Mount
modunda açılır. Bu şekilde açılmasının nedeni ise control file’daki dosyaların
mount modda yerlerinin belirlenmesi ama içlerinin okunmamasıdır.
Startup mount;
4)
Sonrasında ise “alter database” ifadesi ile log
file’ların isimleri değiştirilir.
ALTER DATABASE
RENAME FILE '/diska/logs/log1a.rdo', '/diska/logs/log2a.rdo'
TO '/diskc/logs/log1c.rdo', '/diskc/logs/log2c.rdo';
5)
Veritabanı açılır.
Alter database open;
Redo Log Group ve Memberların Drop Edilmesi
Redo log dosyaları bazen disk değişimlerinde ya da kurtarma
operasyonlarında silinmeleri gerekebilinir. Diskler bozulduğu zamanlarda da bütün redo log dosyalarını
silmemiz gerekebilir.
-Redo log dosyaları silinmeden önce bazı şartlar göz önünde
bulundurulmalıdırlar. Örneğin bir instance’ın çalışmayı sürdürebilmesi için en
az 2 grup redo log dosyasının olması lazım.
-Redo log gruplarının silinebilmeleri için “inactive”
durumda olmaları gerekir. Eğer şu an kullanılanın silinmesi isteniyorsa, önce
log switch yaptırılırılmalıdır.
Alter system switch logfile;
-Bir redo log grubu silinmeden önce arşivlenip
arşivlenmediği incelenmelidir. Bu da dictionary’den v$log tablosu sorgulanarak
öğrenilebilinir.
Select Group#,archived,status from v$log;
Redo log grubunun drop edilmesi için aşağıdaki sorgu
kullanılır.
Alter database drop logfile group 3;
Bir redo log grubu drop edildiğinde, ve sistem de OMF
(oracle-managed files ) yoksa yani sistemdeki veritabanı dosyaları oracle
tarafından kontrol edilmiyorsa o redo log dosyaları sadece veritabanı
yapısından atılmış gibi gözükür. Tamamen silinmesi için bu yapılan işlem
sonrası gerekli işletim sistemi komutlarını kullanarak dosyaların tamamen
silinmesidir. OMF kullanılsaydı, dosyalar otomatik olarak silineceklerdi.
Tek bir member drop etmek içinse aşağıdaki komutlar
kullanılır.
Alter database drop logfile member '/oracle/dbs/log3c.rdo';
Log Switch Zorlaması
Log switch zorlaması
LGWR process’inin zorla bir redo log grubuna yazmayı durdurmasını, ve
başka bir redo log grubuna yazmaya başlamasını sağlar.
Alter system switch logfile;
Redo Log Dosyalarının Kontrolü
Redo log dosyalarının checksumları kontrol edilerek
dosyaların içinde hiç corruption var mı, redo log dosyalarının blokları
arasında bir sorun olup olmadığı incelenerek görülür. Bunun için de
veritabanında bulunan bir parametre aktifleştirilebilinir. DB_BLOCK_CHECKSUM
parametresi true yapılırsa, veritabanı kendiliğinden bu checksum değerlerini
hesaplamaya başlar.
Redo Log Dosyasının Temizlenmesi
Redo log dosyalarının temizlenmesi gerekliliği, bazen redo
log dosyalarının yukarıda belirttiğimiz üzere corrupt olması yani block okumada
bir sorun yaşanması üzerine yaşanabilinir. Aşağıdaki ifade ise corrupt olmuş redo log dosyası eğer şu
anda current modda çalışan redo log grubumuza dahil ise çalışabilir.
Alter database clear logfile group 3;
Eğer corrupt olmuş redo log dosyası arşivlenmediyse
aşağıdaki sorgu uygulanır.
Alter database clear unarchived logfile group 3;
Hiç yorum yok:
Yorum Gönder