Hurriyet

6 Eylül 2013 Cuma

Oracle Veritabanı: AWR - Automatic Workload Repository - 2

Bu yazının öncesi buradadır.

AWR Kurulumu:

AWR'ımız aktive etmek için sistem parametrelerimizde "statistics_level" parametresini set etmeliyiz. Bu parametreyi 3 değere set edebiliriz.


  • basic - AWR'ı kapatır
  • typical - Default olarak seçili gelir. Standard istatistik toplanması anlamına gelir. 
  • all - typical'a ek olarak işletim sisteminden ek planlar ve zamanlama istatistikleri toplanır.
 --Açık Durumlar  
 alter system set statistics_level = typical;  
 alter system set statistics_level = all;  
   
 --Kapalı Durumlar  
 alter system set statistics_level = basic;  
   
 --İstatistik parametresi nasıl görüntülenir?  
 SQL>show parameter statistics_level;  


Snapshot Ayarları:

Var olan snapshotlar ve ayarları:
 select * from dba_hist_wr_control;  
 select * from dba_hist_wr_control where dbid = (select dbid from v$database);  
 

Snapshot Retention Period nasıl bulunur:
 select  
   extract( day from snap_interval) *24*60+  
   extract( hour from snap_interval) *60+  
   extract( minute from snap_interval ) "Snapshot Interval",  
   extract( day from retention) *24*60+  
   extract( hour from retention) *60+  
   extract( minute from retention ) "Retention Interval"  
 from   
   dba_hist_wr_control;  

Snapshot yaratılması:
  exec dbms_workload_repository.create_snapshot;  

Snapshot silinmesi:
 exec dbms_workload_repository.drop_snapshot_range (low_snap_id=>1077, high_snap_id=>1078);   

Snapshotların gösterilmesi:
Display snapshots     select snap_id, begin_interval_time, end_interval_time from dba_hist_snapshot order by 1; 

Snapshot'ların ayarlanması:
 execute dbms_workload_repository.modify_snapshot_settings (  
   interval => 60,  
   retention => 1576800);  
Burada ayarlanan snapshot'ın veritabanındaki korunma süresidir. "Retention" olarak belirtilen parametre dakika cinsindendir. 3 yılı temsil eder. "Interval" ise snapshot'ların alınma sıklığını gösterir.

Kullanışlı Tablo ve View'lar:

 dba_hist_active_sess_history     -- ASH Bilgileri  
 dba_hist_baseline       -- Baseline Bilgileri  
 dba_hist_database_instance     -- İnstance Bilgileri  
 dba_hist_sql_plan       -- Sql Kullanım Bilgileri  
 dba_hist_wr_control       -- AWR Ayarları  
 dba_hist_snapshot     -- AWR 'deki Snapshot Bilgileri


AWR Raporları:

Bir AWR raporı çalıştırmak için 2 yol vardır. Enterprise Manager veya işletim sistemindeki scriptler.

AWR raporu Enterprise Manager'dan Performance tab'ından çalıştırılır.

İşletim sisteminde ise 2 tane ana script bulunmaktadır.  Bunlar Linux veya Unix bir sistemde $ORACLE_HOME/rdbms/admin altında bulunur.  Aşağıdaki şekilde bir raporu çalıştırabiliriz. Aşağıda awrrpt.sql için bir örnek verilmiştir.

cd $ORACLE_HOME/rdbms/admin  
 sqlplus / as sysdba  
 SQL>@awrrpt.sql  

awrrpt.sql : Html veya text tipinde bir rapor istenilip istenilmediğini sorar. Sonrasında snapshot zamanına bağlı olarak kaç gün snapshotların listelenmesi istendiği sorulur. Listelenen snapshotlardan başlangıç ve bitiş için birer tane snapshot id'si girilir. Böylece istenen aralık incelenebilinir.

awrrpti.sql : Direk html tipinde çıkartır. Çıkan sonuçlar aynı dizinde ya awr_report_(begin_snapshot_id)_(end_snapshot_id) olarak kaydedilir ya da bizim vereceğimiz bir dizin ve bir isimle kaydedilir. Eğer özel bir klasör verilmezse $ORACLE_HOME/rdbms/admin/ klasörü altında isimlendirerek yaratır.

Diğer Az Bilinen AWR Raporları:

awrsqlrpt.sql
awrinfo.sql - Genel awr bilgisi
awrddrpt.sql - seçili snapshotlar arasında karşılaştırma


Hiç yorum yok:

Yorum Gönder