ORA-19563: header validation failed for file

Rman ile restore denemesinde restore işlemi sonrasında “switch datafile all” kısmında yukarıdaki gibi bir hata aldım. Hatanın nedeni ve çözümü hakkında kısaca bahsetmek istiyorum.

Source database’ inizde farklı lokasyonlarda aynı isimde birden fazla dbf’ iniz varsa ve siz bunları restore yaptığınız sunucu üzerinde tek bir lokasyonda toplamaya çalışıyorsanız bu tarz bir hata almanız kaçınılmaz olacaktır. Çünkü işin doğası gereği aynı isimde birden fazla file olamayacağından dolayı duplicate isimdeki file’ lerden biri mutlaka ezilecektir. Dolayısıyla da switch datafile all komutunuz düzgün çalışamayacaktır. Aşağıdaki ilk restore komutunda 13 ve 42 satırlarında INFRA07.dbf isminde ve 38 ve 43 satılarında da INFRA31.dbf isimlerinde aynı iki dosya aynı lokasyona restore edilmeye çalışılmaktadır.
Continue reading

RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece

Bir önceki yazımda spfile’ I rman backuplarınız içerisinden nasıl restore edebileceğimizden bahsetmiştim. (http://www.kamilturkyilmaz.com/2012/02/19/spfile-dosyasi-nasil-restore-edebiliriz/) Bu işlemi yaparken zaman zaman yazının başlığında da belirttiğim gibi hata mesajları alabilirsiniz. Bu hata sadece spfile için değil controlfile’ I de from autobackup komutu ile dönmeye çalıştığınız da bu tür hata mesajlarıyla karşılabilirsiniz. Bu hatanın neden kaynaklandığı üzerine biraz konuşalım ;

Database’ nizi spfile veya controlfile’ nizdeki bir problemden dolayı start edemiyorsunuz. Soruna çözmek amacıyla backupdan dönmeye karar verdiniz; İşlemi yapmak istediğinizde ;

RMAN> restore controlfile from autobackup;
Continue reading

SPFILE Dosyasını Nasıl Restore Edebiliriz

Database’ inizi start etmeye çalıştığınızda bu tarz bir hata alıyor iseniz, mevcut spfile dosyanızı sistem okuyamıyor yani database’ iniz start olmuyor demektir. Database’ iniz açık olmadığından dolayı ,

create spfile from file ;

komutundan da faydalanamıyorsunuz . Ama spfile’ e de ihtiyacınız var. Bu durumda spfile’ inizin backupınızı alıyor iseniz en kolayı almış olduğunuz son backupdan bunu dönmeniz olacaktır. Spfile’ i backup’ dan nasıl restore edebileceğimize geçmeden önce bu duruma örnek başka case’ lerle nelerdir bunlar üzerinde biraz konuşalım, toparlarsak ;

• Spfile’ miz kazara silinmiş olduğunda,
• Daha önceki bir spfile’ i görmek istediğimizde,
• Database’ imizi şu anki spfile ile start edemediğimizde
Continue reading

Eski Bir Backupı Nasıl Restore Edebiliriz

Eğer database’ inizden sadece rman backup alıyorsanız, günün birinde şöyle bir sorunla karşılaşabilirsiniz; Sadece tablonun birinde bir problem oluştuğunu ve olması gereken dataların artık olmadığını farkettiğinizde ne yapacaksınız. Maalesefki şu anda RMAN ile tablo bazında bir restore / recover işlemi yapılamıyor. Bundan sonraki oracle versiyonlarında bunun içinde bir çözüm bulunmasını bekliyorum Şu aşama da yapılabileceklerimiz aslında sınırlı, problemin yaşandığı günden önceki bir güne ait backupımızın durduğunu varsayarak tablespace bazında veya full restore/recover opsiyonlarından birini seçmemiz gerekecektir.
Continue reading

Rman Backup’ ın Kaldığı Yerden Tekrar Başlatılması (Backup’ ın Tamamlanmadan Sonlanması Durumunda)

Bu bahsetmiş olduğum durum aslında hemen hemen herkesin başına mutlaka gelmiştir. Özellikle size anlamında ciddi boyutlardaki database’ lerin backuplarının da nispeten uzun sürdüğünü söyleyebiliriz. Bir örnekle açıklamaya çalışalım, production database inizden backup alıyorsunuz ve backupınız yaklaşık 10 saatte tamamlanıyor. Backup başlatıkdan 9 saat sonra (yani bitmesine çok az bir zaman kalmışken) database’ de yaşanan bir problem den dolayı sistem down oluyor ve sizin backuplar da haliyle fail olmuş oluyor. Bu tarz bir durumda karşılaşıldığında ne yapabiliriz sorusuna cevap vermeye çalışacağım. Şöyle bir senaryoylada karşılabiliriz. Kritik bir işlem öncesinde database’ in full backupını almak istiyorsunuz ve backup sonrasında da hemen işleme başlamanız gerekiyor. Backup bir şekilde fail olduğunda tekrar başlatma şansımız yoksa ne yapabiliriz. Backupımız olmadan işleme başlamak da istemiyoruz. BU gibi durumlarda backupı kaldığı yerden tekrar başlatabiliriz. Backupın fail olduğu noktaya kadar almış olduğu tüm backupları skip ettirerek kaldığı yerden devam etmesini sağlayabiliriz. Yine bir örnek üzerinden gitmeye çalışalım.

Aşağıdaki komutla database’ in archiveloglar dahil tüm backupını almaya çalışıyorum.
Continue reading