Home / MAKALELER / Veri Tabanı / Recover Operasyonunun Test Edilmesi

Recover Operasyonunun Test Edilmesi

Rman üzerinden backupları nasıl alabileceğimizden, alınan bu backupların nasıl validate edileceğinden bahsetmiştik. Rman ile yapılan backup dan dönme işlemlerinde bence en önemli kısım recover operasyonunun yapıldığı kısımdır. Elinizde hangi güne ait bir backup var ise bir şekilde restore komutu ile bunu açabiliyorsunuz ama esas problem açılan bu backupın son ana veya belli bir zamana recover edilmesi noktasında problemlerle karşılaşma olasılığının yüksekliğidir. Buradaki problemde örneğin until time göre bir recover işlemi yapmamız gerekiyorsa ve zamanı olması gerekenden ileri bir zaman dilimine veriyor isek hata alıp tekrar denemek durumunda kalacağız demektir. Tam bu noktada oracle bize şöyle bir imkan sunuyor;
Recover aşamasına geçmeden önce yapmayı planladığın recover’ ı bir test edeyim. Çalışıyorsa problem yok demektir dolayısıyla devam edebiliriz. Bunuda arka tarafda şöyle yapıyor aslında; İhtiyaç duyduğu tüm archivelog ve sonrasında redo datasını bulup datafile’ lere apply ediyor processesi sonuna kadar test ediyor, testi bitirdiğinde ise yapmış olduğu tüm işleri rollback yaparak başladığı noktaya geri getiriyor ve size Test recovery complete veya didn’ t complete şeklinde sonucu dönüyor. Kendi test ortamımda yapmış olduğum test sonucuna ait outputlarıda aşağıda sizlerle paylaşıyorum.

– Rman ile database’ imizi kapatıp mount modda açarak önce restore yapıp sonrasında recover işlemini test etmeyi deneyelim ;

RMAN> shutdown immediate
database closed
database dismounted
Oracle instance shut down

RMAN> startup mount
connected to target database (not started)
Oracle instance started
database mounted
Total System Global Area 447778816 bytes
Fixed Size 1375200 bytes
Variable Size 339739680 bytes
Database Buffers 100663296 bytes
Redo Buffers 6000640 bytes

RMAN> restore database ;
Starting restore at 22-OCT-11
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=129 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=192 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=6 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=67 device type=DISK
allocated channel: ORA_DISK_5
channel ORA_DISK_5: SID=130 device type=DISK
allocated channel: ORA_DISK_6
channel ORA_DISK_6: SID=194 device type=DISK
allocated channel: ORA_DISK_7
channel ORA_DISK_7: SID=7 device type=DISK
allocated channel: ORA_DISK_8
channel ORA_DISK_8: SID=68 device type=DISK
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to C:\ORACLE\ORADATA\TEST\SYSTEM01.
DBF
channel ORA_DISK_1: restoring datafile 00002 to C:\ORACLE\ORADATA\TEST\SYSAUX01.
DBF
channel ORA_DISK_1: restoring datafile 00003 to C:\ORACLE\ORADATA\TEST\UNDOTBS01
.DBF
channel ORA_DISK_1: restoring datafile 00004 to C:\ORACLE\ORADATA\TEST\USERS01.D
BF
channel ORA_DISK_1: restoring datafile 00005 to C:\ORACLE\ORADATA\TEST\EXAMPLE01
.DBF
channel ORA_DISK_1: restoring datafile 00006 to C:\ORACLE\ORADATA\TEST\DBADATA01
.DBF
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: restore complete, elapsed time: 00:00:45
Finished restore at 22-OCT-11

RMAN> recover database test;
Starting recover at 22-OCT-11
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
using channel ORA_DISK_7
using channel ORA_DISK_8
starting media recovery
RMAN-11006: WARNING: test recovery results:
ORA-10574: Test recovery did not corrupt any data block
ORA-10573: Test recovery tested redo from change 1518433 to 1523939
ORA-10570: Test recovery complete
media recovery complete, elapsed time: 00:00:01
Finished recover at 22-OCT-11

Yaptığımız test sonrasında işlemin başarılı olduğunu gördükden sonra recover işlemimize geçmeden yaptığımız bu işlemlerin alert loga nasıl yansıdığını görelim isterseniz ;

alter database mount
Successful mount of redo thread 1, with mount id 2063344976
Allocated 3981204 bytes in shared pool for flashback generation buffer
Starting background process RVWR
Sat Oct 22 15:08:04 2011
RVWR started with pid=21, OS id=4704
Database mounted in Exclusive Mode
Lost write protection disabled
Completed: alter database mount
Sat Oct 22 15:08:33 2011
Full restore complete of datafile 6 C:\ORACLE\ORADATA\TEST\DBADATA01.DBF. Elapsed time: 0:00:17
checkpoint is 1518433
last deallocation scn is 1418371
Full restore complete of datafile 4 C:\ORACLE\ORADATA\TEST\USERS01.DBF. Elapsed time: 0:00:17
checkpoint is 1518433
Full restore complete of datafile 3 C:\ORACLE\ORADATA\TEST\UNDOTBS01.DBF. Elapsed time: 0:00:19
checkpoint is 1518433
last deallocation scn is 1512384
Undo Optimization current scn is 1515019
Full restore complete of datafile 5 C:\ORACLE\ORADATA\TEST\EXAMPLE01.DBF. Elapsed time: 0:00:22
checkpoint is 1518433
last deallocation scn is 1450263
Sat Oct 22 15:08:53 2011
Full restore complete of datafile 2 C:\ORACLE\ORADATA\TEST\SYSAUX01.DBF. Elapsed time: 0:00:37
checkpoint is 1518433
last deallocation scn is 985913
Full restore complete of datafile 1 C:\ORACLE\ORADATA\TEST\SYSTEM01.DBF. Elapsed time: 0:00:40
checkpoint is 1518433
last deallocation scn is 985093
Undo Optimization current scn is 1515019
Sat Oct 22 15:09:12 2011
alter database recover datafile list clear
Completed: alter database recover datafile list clear
alter database recover datafile list
1 , 2 , 3 , 4 , 5 , 6
Completed: alter database recover datafile list
1 , 2 , 3 , 4 , 5 , 6
alter database recover if needed
start test
Test Media Recovery Start
Serial Media Recovery started
ALLOW CORRUPTION option must use serial recovery
Recovery of Online Redo Log: Thread 1 Group 1 Seq 43 Reading mem 0
Mem# 0: C:\ORACLE\ORADATA\TEST\REDO01.LOG
Test recovery complete
Test recovery tested redo from change 1518433 to 1523939
Test recovery found no problems
ORA-10574 signalled during: alter database recover if needed
start test

Şimdi recover işlemimizi yapıp database’ imizi tekrar açalım ;

RMAN> recover database;
Starting recover at 22-OCT-11
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
using channel ORA_DISK_5
using channel ORA_DISK_6
using channel ORA_DISK_7
using channel ORA_DISK_8
starting media recovery
media recovery complete, elapsed time: 00:00:04
Finished recover at 22-OCT-11

RMAN> alter database open ;
database opened.

About Kamil Turkyilmaz

1979 Tokat/Zile doğumluyum. Yıldız Teknik Üniversitesi 1997 - 2001 mezunuyum ancak 1998 yılından itibaren IT sektöründe, 2000 yılından bu yanada Oracle üzerine çalışmaktayım. 2005 yılına kadar oracle database'i üzerine yazılmış olan kimi uygulamalara software support hizmeti, sonrasında ise oracle veritabanı yöneticiliği olmak üzere yaklaşık 12 yıldır sektör içerisindeyim. Oracle' ın hemen hemen tüm ürünlerinin kurulumu, konfigurasyonu, yönetimi konusundaki çalışmalarıma özel bir bankada oracle dba olarak devam etmekteyim. Aynı zamanda kimi bilişim sitelerinde yazarlık yapıyorum, bunun yanısıra bu alandaki deneyim ve tecrübelerimi daha fazla kullanıcıyla paylaşabilmek adına bir de oracle blog yazarıyım.

İlginizi Çekebilir

SQL Server ile Veri Şifreleme

Bilgi teknolojilerinde verinin güvenliği çok kritik bir öneme sahiptir. Önemli verileri korumak için ekstra bir …

Bir Cevap Yazın