Oracle Veri tabanı belirli periyodlar ile AWR denilen ve veri tabanının genel durum bilgisinin paylaşıldığı raporlar üretmektedir. Veri tabanınızın hangi zaman dilimleri arasında yoğunluk gösterdiği, tepki süresinin yükseldiği zaman dilimlerini bulmak ve ilgili AWR’leri daha detaylı inceleyebilmek için aşağıdaki scripti kullanabilirsiniz.
SELECT I.INSTANCE_NAME INSTANCE_NAME_PRINT, S.SNAP_ID SNAP_ID, TO_CHAR (S.STARTUP_TIME, 'mm/dd/yyyy HH24:MI:SS') STARTUP_TIME, TO_CHAR (S.BEGIN_INTERVAL_TIME, 'mm/dd/yyyy HH24:MI:SS') BEGIN_INTERVAL_TIME, TO_CHAR (S.END_INTERVAL_TIME, 'mm/dd/yyyy HH24:MI:SS') END_INTERVAL_TIME, ROUND ( EXTRACT (DAY FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) * 1440 + EXTRACT (HOUR FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) * 60 + EXTRACT (MINUTE FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) + EXTRACT ( SECOND FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) / 60, 2) ELAPSED_TIME, ROUND ( (E.VALUE - B.VALUE) / 1000000 / 60, 2) DB_TIME, ROUND ( ( ( ( (E.VALUE - B.VALUE) / 1000000 / 60) / ( EXTRACT ( DAY FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME)* 1440 + EXTRACT ( HOUR FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) * 60 + EXTRACT ( MINUTE FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) + EXTRACT ( SECOND FROM S.END_INTERVAL_TIME - S.BEGIN_INTERVAL_TIME) / 60)) * 100), 2) PCT_DB_TIME FROM DBA_HIST_SNAPSHOT S, GV$INSTANCE I, DBA_HIST_SYS_TIME_MODEL E, DBA_HIST_SYS_TIME_MODEL B WHERE I.INSTANCE_NUMBER = S.INSTANCE_NUMBER AND E.SNAP_ID = S.SNAP_ID AND B.SNAP_ID = S.SNAP_ID - 1 AND E.STAT_ID = B.STAT_ID AND E.INSTANCE_NUMBER = B.INSTANCE_NUMBER AND E.INSTANCE_NUMBER = S.INSTANCE_NUMBER AND E.STAT_NAME = 'DB time' ORDER BY I.INSTANCE_NAME, S.SNAP_ID DESC;
Bu script 11gR1 ve 11gR2 ‘de test edilmiştir. Lütfen scriptleri üretim ortamında çalıştırmadan önce test sunucularınızda test ediniz.