29 Ağustos 2010 Pazar

Birden fazla MRP?

Merhaba,

Geçtiğimiz günlerde şu şekilde bir soru ile karşılaşmıştım;

"Data Guard replikasyonu ve senkronizasyonu için birden fazla MRP görevi çalıştırılabilir mi?"

Kişisel yorumum hayır, çalıştırılamaz. Açıkçası ben hiç MRP1, MRP2 gibi görevlere rastlamadım. Bir veritabanını açarken, media recovery sırasında parallel işlem yaptırabilirsiniz;

SQL> RECOVER DATABASE PARALLEL X;

Parallel işlemler devreye girerek, media recovery yapacaktır ancak bu işlemler sırasında göreceğiniz Oracle görevi muhtemelen P001 gibi bir isimle yer alacaktır, MRP1.. değil.

Hatta bu konunun tartışıldığı bir forum bulunmakta ve ben de birkaç cümle yazmıştım. Umarım okuyanlar için faydalı olur;

ora_p000_process

Recovery_parallelism parametresi ile MRP arasında hiçbir ilişki bulunmuyor, MRP görevlerinin sayısını da arttırmıyor. P ile başlayan görevler parallel işlem yapmakta olan görevlerdir. data guard replikasyonu için kullanılan görev MRP'dir, P ile başlayan parallel görevler değildir.

Media Recovery Process (MRP) bir komut ile devreye alınıp, yine bir komut ile devreden çıkarılabilir;

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; --> MRP görevi sonlandırılır ve media recovery devam etmez.

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE [USING CURRENT LOGFILE] DISCONNECT FROM SESSION; --> Eğer bir standby redo log grubunuz varsa using current logfile diyerek, MRP görevini bu komut ile yeniden başlatabilirsiniz.

Dip not: Fiziksel beklemede bulunan bir veritabanını "read only", yani sadece okuma modunda açabilmek için MRP görevini öncelikle sonlandırmanız gerekmektedir. 11g'de bile bunu yapmadan read only olarak veritabanını açamazsınız, sorgu koşamazsınız ve raporlama yapamazsınız.

İyi geceler.

Ogan

Hiç yorum yok:

Takip et: @oganozdogan