ORA-1693: max # extents XX reached in lobsegment SYS.SYS_LOBXXXXX$$

Database’ de tablespace’ lerinizde free space’ den bağımsız olarak maxextend sınırı verilerek (veya sonradan set edilerek de oluşturulmuş olabilir) create edilmiş olan nesnelerde bu max extent değerine ulaşıldığı zaman ORA-1693: max # extents XX reached in lobsegment SYS.SYS_LOBXXXXX$$ hatası almaya başlarız. Bizim örneğimizde hatayı aldığımız nesneye ve extent değerlerine ;

SELECT owner, segment_name, extents, max_extents
FROM dba_segments
WHERE segment_name = ‘ SYS_LOBXXXXX$$’;

Hata alınan alınan segmentin hangi tabloya ait olduğuna bulmak içinse ;
Continue reading

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

Oracle’ da Shrink Operasyonu Nedir / Nasıl Yapılır …

Veritanımızdaki objeler zaman içerisinde tablo üzerinde sürekli olarak delete – insert – … işlemlerinin yapılmasından dolayı fragmantasyona uğrayıp aslında olması gereken size’ larından çok daha fazla yer işgal eder duruma gelebilirler. Bu tarz operasyonlarda bilinen en büyük yanlışlık tablodaki eski verileri belirli kritere göre silmeme rağmen neden bu tablo sürekli olarak büyüyor ? şeklindeki itirazlardır. Özellikle dba’ lerin zaman zaman tablolarda oluşan fragmantasyonları yazılımcılara bildirdiklerinde ve bunun için çözüm üretmeye çalıştıklarında sıklıkla aldıkları cevap ; biz tabloda zaten X günlük veri tutuyoruz neden büyüyor şeklinde oluyor şeklindeki dönüşlerdir. Delete işlemi tabloya yer kazandırmaz, oracle daki segment büyüme mantığı kullanılan blogun delete ile silinse dahi tekrar kullanılmadan bir sonraki blok üzerinden devam etme mantığına dayanır. (delete blok üzerindeki high water mark’ ı geri çekmez) Bu durumu bir örnekle açıklayıp tabloya orijinal size’ ını nasıl kazandırabileceğimizden bahsedelim.
Continue reading