Database’ de bir recover restore yapmak istediğimizde almış olduğumuz backuplardan hangisini kullanacağımızı nasıl tespit edebileceğimizden bahsetmiştik. (http://www.kamilturkyilmaz.com/2011/10/22/restore-icin-gerekli-olan-backuplari-nasil-tespit-edebiliriz/) Şimdi ise tespit ettiğimiz bu backupda problem olup olmadığını nasıl tespit edeceğimizden bahsetmek istiyorum. Sektörde şöyle bir eksiklik olduğunu düşünüyorum. Oracle kullanan hemen hemen tüm firmalar bir şekilde backuplarını alıyorlar. Ancak alınan bu backupların sağlam olup olmadığına, bir disaster durumunda bu backupların kullanılabilir durumda olup olmadığına bir çok firma dönüp bakmıyor dolayısıyla bir problem olduğunda backuplarda kullanılamadığında beraberinde cevaplanması gereken birçok soru getiriyor. Yani her durumda sıkıntılı bir süreçle karşı karşıya kalınıyor diyebiliriz. İşte bu tarz durumların önüne geçmek için zaman zaman ki bence belli periyotlarla backuplarımızı kontrol etmemiz faydalı olacaktır. Bu işlemi nasıl yapabiliriz kısmına gelirsek ;
Yapacağımız işlem çok basit aslında, bunun için rman’ in VALIDATE komutundan faydalanıyoruz. Şimdi hem bir kaç örnek yapıp sonuçlarını görelim, hemde farklı kullanım şekilleri hakkında örnekler verelim ;
RMAN> restore database validate ;
Starting restore at 22-OCT-11
using channel ORA_DISK_1
channel ORA_DISK_1: starting validation of datafile backup set
channel ORA_DISK_1: reading from backup piece D:\ORACLE\FRA\TEST\BACKUPSET\2011_
10_22\O1_MF_NNNDF_TAG20111022T110051_7B4Y1NH4_.BKP
channel ORA_DISK_1: piece handle=D:\ORACLE\FRA\TEST\BACKUPSET\2011_10_22\O1_MF_N
NNDF_TAG20111022T110051_7B4Y1NH4_.BKP tag=TAG20111022T110051
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: validation complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting validation of datafile backup set
channel ORA_DISK_1: reading from backup piece D:\ORACLE\FRA\TEST\BACKUPSET\2011_
10_22\O1_MF_NNNDF_TAG20111022T110126_7B4Y2PXS_.BKP
channel ORA_DISK_1: piece handle=D:\ORACLE\FRA\TEST\BACKUPSET\2011_10_22\O1_MF_N
NNDF_TAG20111022T110126_7B4Y2PXS_.BKP tag=TAG20111022T110126
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: validation complete, elapsed time: 00:00:15
Finished restore at 22-OCT-11
Validate kullanımı ile ilgili bazı örnekler ;
restore database validate;
restore database from tag MON_BCK validate;
restore datafile 1 validate;
restore archivelog all validate;
restore controlfile validate;
restore tablespace users validate;
Flash recovery araedaki tüm backup piece’ lerini tek komut ile validate etmek istersek ;
Validate recovery area;
Komutunundan faydalanabiliriz.
Bu konu ile ilgili önemli bir nokta var ki; validate komutu default olarak alınan backuplarda physical corruption olup olmadığını test eder. Backuplarda logical bir corruption olup olmadığını test etmek için ise CHECK LOGICAL komutunu kullanmamız gerekmektedir;
Validate backupset check logical ;
RMAN> validate backupset 16 check logical;
Starting validate at 22-OCT-11
using channel ORA_DISK_1
channel ORA_DISK_1: starting validation of datafile backup set
channel ORA_DISK_1: reading from backup piece D:\ORACLE\FRA\TEST\BACKUPSET\2011_
10_22\O1_MF_NNNDF_DB_FULL_BAKUP_7B564DY8_.BKP
channel ORA_DISK_1: piece handle=D:\ORACLE\FRA\TEST\BACKUPSET\2011_10_22\O1_MF_N
NNDF_DB_FULL_BAKUP_7B564DY8_.BKP tag=DB_FULL_BAKUP
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: validation complete, elapsed time: 00:00:15
Finished validate at 22-OCT-11
Kamil Bey makaleniz için çok teşekkür ederim,itinayla takip ediyorum.
Anlaşılır anlatımınız ve önemli konulara değinmeniz çok faydalı oluyor.
Türkçe kaynak eksikliklerini giderme noktasındaki çabanız takdire şayan.
Sitenizde eskisi gibi sayacınızı görmeyi çok isteriz ve birde makaleleriniz için bir beğenme butonu olursa hoş olacağına inanıyorum,acizane düşüncelerim sürç-i lisan ettiysem affola.
Birde müsadenizle bir sorum olacaktı,yanlış bilmiyorsam validate işlemi backup ı dönme süremizle eşdeğer oluyordu bu sistemi yormaz mı? Buradaki örnekte 15sn den bahsediyor bu herhalde test ortamınızda olduğu için galiba.
Başarılarınızın ve makalelerinizin devamını dilerim iyi çalışmalar.
Selam Burak,
Testlerimde kullandığım veritabanının size’ ından kaynaklı bir durum bu, validation’ ın süresi backup’ ın size’ ı ile doğru orantılı olduğunu söyleyebiliriz. Çok dikkatlisin tebrik ederim. Bu tarz blog yazılarında aslında senin tespitindeki gibi ufak detaylara dikkat etmekde fayda var diye düşünüyorum. Ayrıca güzel dileklerin içinde teşekkür ederim.