10 Kasım 2010 Çarşamba

Redolog Group Tanımlama / Değişiklik Yapma


Oracle database server kurduğumuz zaman default olarak 50 mb büyüklüğündeki 3 tane redolog group tanımlanmış olarak gelir. Ancak gerçek ortamlarda redologların size’ larında zaman zaman değişiklikler yapmak zorunda kalırız. Örneğin alert log içerisinde checkpoint not complete hatası aldığımızda redologlarımızın size’ ını artırmamız gerekebilir. Bu tarz değişiklikleri kullanılan redologları sıra ile drop edip yenilerini istediğimiz lokasyona istediğimiz boyutlarda create ederiz. Oracle ilk kurulduğunda her 3 redo log’ uda  aynı lokasyona create eder. Redolar database’ in son noktaya döndürmek istediğimiz de kritik önem taşıdıklarından mutlaka farklı lokasyonlara memberlanmaları gerekmektedir. (Şart değil tabiki sadece data  kaybı yaşamak istemiyorsak J)

Yeni redoları eklemeden önce mevcut sistemdeki görmek için ;

select v1.member, v2.*
from v$logfıle v1, v$log v2
where v1.group# = v2.group#
order by 3;

Yukarıdaki scripti kullanabiliriz.  Bu script ile kaç tane redolog grubumuz var bunların büyüklükleri ne kadar  gibi sorularımıza cevap verir. Sonrasında yeni loglarımızı create edelim.  Aşağıdaki script tek memberli redo log group create eder.

alter database add logfıle group 4
('/setlog1/setlogdata/redo04.log') sıze 250m;

alter database add logfıle group 5
('/setlog1/setlogdata/redo04.log') sıze 250m;

alter database add logfıle group 6
('/setlog1/setlogdata/redo04.log') sıze 250m;

İkişerli member olacak şekilde (farklı lokasyonlarda) create etmek istersek ;

alter database add logfıle group 4
('/setlog1/setlogdata/redo04.log',
'/setlog2/setlogdata/redo04.log' ) sıze 250m;

alter database add logfıle group 5
('/setlog1/setlogdata/redo05.log',
'/setlog2/setlogdata/redo05.log' ) sıze 250m;

alter database add logfıle group 6
('/setlog1/setlogdata/redo06.log',
'/setlog2/setlogdata/redo06.log' ) sıze 250m;

Yukarıdaki scripti kullanabiliriz. Yenilerini oluşturdukdan sonra artık kullanmayacak olduğumuz eskileri drop edebiliriz. Ancak burada kontrol etmemiz bir nokta var.  (Yukarıdaki ilk script kontrol edebiliriz) Statüsü INACTIVE olan groupları drop edebiliriz. Eğer drop etmek istedğimiz log group ACTIVE durumda ise ;

alter system switch logfile ;

ile statüsünü değiştirebiliriz. Drop etmek için ise ;

alter database drop logfıle group 1;

alter database drop logfıle group 2;

alter database drop logfıle group 3;

komutlarını kullanabiliriz. 


Bu arada redolog grouplar ile ilgili olarak daha detaylı bilgi almak isterseniz Çağatay Çebinin aşağıdaki sayfasını ziyaret edebilirsiniz. Çok güzel bir çalışma olduğunu söyleyebilirim. Kendi yazılarımda denk geldikçe bu tarz siteleri referans göstermek istiyorum aslında, hem okuyucular için faydalı olacaktır hemde bu tarz faydalı bilgiler içeren bilgiler veren arkadaşlarımızın emeğinede saygı göstermiş oluruz.Kendi sayfamdaki yazılarımıda (referans göstermek şartıyla) herkes kullanabilir. 



Kamil TÜRKYILMAZ 

Hiç yorum yok: