Spesifik olarak bir sql’ i AWR raporuna eklemek

Zaman zaman problem yaşadığınız bir sorgu olduğunu düşünün veya bir sorguyu tune ettiniz sonrasında izlemek istiyorsunuz veya spesifik olarak bir sorgunun zaman zaman database’ in performansına olumsuz etkileri olduğunu düşünüyosunuz ve bu sorgunun farklı zamanlardaki davranışlarını merak ediyosunuz. Yukarıda belirtmiş olduğum tüm bu soruların cevabını bulmak için neler yapardınız ? Internal olarak bir sürü aksiyon alınabilir ama inanın hiçbiri aşağıdaki çözüm yolu kadar basit ve etkili olmayacaktır.

Oracle bizim adımıza zaten her saat başında (default olarak ) sistemin genel durumu, olan bitenler hakkında bize bir rapor hazırlıyor, biz bu raporun içine varsa spesifik olarak isteklerimizi belirtip ekliyor olsaydık güzel olmazmıydı.

İşte aşağıdaki komut tam olarak bunu yapıyor. Tek yapmanız gereken sogunuzun sql_id’ sini bulmak ve aşadaki sorgu bloğunu çalıştırmak. Sonrasında alınacak olan tüm AWR raporlarında sizin sorgunuzunda olduğunuzu göreceksiniz.
Continue reading

RAC instance’ ında Spfile’ in Path’ i Nasıl Değiştirilir

Eğer Oracle RAC opsiyonunu kullanıyor iseniz ve spfile’ in path’ ini değiştirmemiz gerekirse aşağıdaki adımları uygulayarak spfile ‘inizi farklı bir ASM diskgroup altına taşıyabilirsiniz.

Öncelikle herhangi bir path’ e initfile oluşturuyoruz ;

SQL> create pfile=’/u01/gi/oragrid/grid/11.2.0.4/dbs/initASM_move.ora’ from spfile;
File created.

Database’ i kapatıyoruz ;

[oragrid@Redhat701 ~]$ srvctl stop database -d tpdb

Sonrasında tek bir node ‘ dan database ‘ i mount modda açıyoruz;

Spfile’ i olmasını istediğimiz path’ de create ediyoruz ;

SQL> create spfile=’+DATA02_0000′ from pfile=’/u01/ora/db/11.2.0.4/dbs/init_tpdb_kamil.ora';
File created.

ASM üzerinden file’ i kontrol edebiliriz ;

Database’ i shutdown edelim ;

SQL> shu immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> exit

Database ‘i start etmeden önce son olarak srvctl komutu yeni spfile ‘imizin yerini burda da set edelim;

[oracle@Redhat701 dbs]$ srvctl modify database -d tpdb -p +DATA02_0000/tpdb/spfiletpdb.ora
[oracle@Redhat701 dbs]$

Database’ i açıp kontrol edelim ;

Artık spfile’ imizi yeni lokasyonuna taşımış olduk.

Reference;
Recreating the Spfile for RAC Instances Where the Spfile is Stored in ASM (Doc ID 554120.1)

Bir Önceki Resetlogs Zamanının Öncesine Rman ile Recover İşlemi (incarnation)

Database resetlogs opsiyonu ile her açıldığında, sistem tarafından otomatik olarak yeni bir incarnation numarası verilmektedir. Resetlogs sonrasında database’ in yeni bir versiyonu oluşmakta buda yeni bir incarnation ile ifade edilmektedir diyebiliriz. Resetlog sonrasında database’ deki archive ve tüm redologlar clear edildikden sonra log sequence değerleride resetlenerek 1’ den başlayacak şekilde set edilmiş olacaktır. Eğer database’ de incomplete recovery yapıyor iseniz bu opsiyonu kullanmak durumunda kalacaksınız demektir.

Burdaki bir önemli nokta, database resetlogs opsiyonu ile açıldıkdan sonra, resetlogs öncesine ait backupları kullanamayacağınız dır. Eğer bu tarz bir durumla kalırsanız ne yapılması gerektiğinden bu yazımda bahsediyor olacağım.

Birde aşağıdaki grafik üzerinden anlatmaya çalışayım. Bakalım ne kadar başarılı olacağım. t anında bir tablo create ettiğimizi düşünelim. Sonra t1 anında tablomuzu truncate ettiğimizi sonrasında yetmeyip t2 anında tabloyu drop ettiğimizi sonrasında da t4 anında olayı farkettiğimizi düşünelim. Sonrasında önce t1 anına dönelim sonrada t anına tabloyu create ettiğimiz ana gitmeye çalışalım.

1
Continue reading