Benutzer-Werkzeuge

Webseiten-Werkzeuge


prog:oracle_monitor_hint

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
prog:oracle_monitor_hint [2014/02/19 20:44] gpipperrprog:oracle_monitor_hint [2014/02/19 20:50] (aktuell) gpipperr
Zeile 1: Zeile 1:
 +===== Oracle SQL Statements mit dem Tuning Pack überwachen - Überwachung mit dem MONITOR Hint aktivieren =====
 +
 +DB:11g
 +
 +Voraussetzung: 
 +
 +  * Oracle EE Edition mit Tuning und Diagnostic Pack!
 +  * Parameter: control_management_pack_access auf  DIAGNOSTIC+TUNING
 +  * Parameter: STATISTICS_LEVEL                  auf 'TYPICAL' or 'ALL
 +
 +
 +Mit dem /*+ MONITORING */ Hint kann ein SQL Statement so markiert werden, das es immer auch in die SQL Überwachung mit dem Tuning Pack aufgenommen wird. 
 +
 +Normalerweise werden nur Statements die länger als 5sec mit in die Überwachung aufgenommen.
 +
 +
 +Beispiel:
 +<code sql>
 +select /*+ MONITOR */ deptno,count(*) 
 +  from emp
 + group by deptno
 +/
 +</code>
 +
 +
 +Überwachen kann die Ausführung über die View v$sql_monitor.
 +
 +Beispiel:
 +<code sql>
 +-- obiges statement  als scott zuvor ausgeführt
 +
 +
 +
 +select SQL_ID
 +     , SQL_TEXT
 +     , DISK_READS
 +     , BUFFER_GETS
 +     , CPU_TIME 
 + from v$sql_monitor
 +/
 +
 +
 +column  SQL_ID   format a20
 +column  SQL_TEXT format a30 word
 +
 +SQL_ID               SQL_TEXT                         DISK_READS  BUFFER_GETS     CPU_TIME
 +-------------------- ------------------------------ ------------ ------------ ------------
 +a3tybcw6wjxry        select /*+ MONITOR */                                6            0
 +                     deptno,count(*)
 +                     from emp
 +                     group by deptno
 +                     
 +</code>
 +
 +
 +Bericht über das Statement anzeigen:
 +
 +<code sql>
 +
 +set trim on
 +set trimspool on
 +set echo off
 +set feedback off
 +set long 1000000
 +set longchunksize 1000000
 +set linesize 1000
 +set pagesize 0
 +
 +
 +spool report_sql.html
 +
 +SELECT DBMS_SQLTUNE.report_sql_monitor(
 +  sql_id       => 'a3tybcw6wjxry',
 +  type         => 'HTML',
 +  report_level => 'ALL') AS report
 +FROM dual
 +/
 +
 +spool off
 +
 +-- unter windows den Bericht gleich anzeigen lassen
 +
 +host report_sql.html
 +
 +</code>
 +
 +
 +Für den Bericht stehen die folgenden Typen zur Auswahl:
 +
 +  * TEXT - nur Text
 +  * HTML - einfacher HTML Bericht
 +  * XML  - XML Format 
 +  * ACTIVE - erweitertes HTML Format mit Java Script und Flash von der Oracle Website
 +
 +
 +
 +Weitere Bericht über die v$sql_monitor mit dem Package DBMS_SQLTUNE ausgeben:
 +
 +  * REPORT_SQL_MONITOR_LIST
 +  * REPORT_SQL_DETAIL
 +
 +
 +==== Quellen ====
 +
 +  * http://docs.oracle.com/cd/E11882_01/server.112/e41573/instance_tune.htm#PFGRF94543
 +  * http://docs.oracle.com/cd/E11882_01/appdev.112/e16760/d_sqltun.htm#ARPLS220
 +  * http://www.oracle-base.com/articles/11g/real-time-sql-monitoring-11gr1.php
 +
  
prog/oracle_monitor_hint.txt · Zuletzt geändert: 2014/02/19 20:50 von gpipperr