Database Reference
In-Depth Information
SQL> alter session set tracefile_identifier=TEST;
Session altered.
SQL> alter session set sql_trace=true;
Session altered.
SQL> select 1 from dual;
1
----------
1
In dem obigen Beispiel wurde die Datei db11_ora_1564_TEST.trc generiert. Mit dem
ORADEBUG kann man den vollständigen Namen der Trace-Datei ermitteln.
SQL> oradebug setmypid
Statement processed.
SQL> oradebug tracefile_name
D:\ORACLE\diag\rdbms\db11\db11\trace\db11_ora_2732.trc
Bei Oracle 10 g wird dieser Name aber erst nach dem Aktivieren und Erzeugen der jewei-
ligen Trace-Datei angezeigt.
Man könnte den Trace-Namen auch manuell errechnen, etwa so, wie im Hilfeskript
get_trace_name.sql. Dieses Skript wird in mehreren Test-Cases benutzt und befindet sich
im Verzeichnis „auxiliary“.
6.1.7
Utility TKPROF
Die Untility tkprof wandelt die jeweilige Trace-Datei in eine wesentlich bessere für die
Analyse Form um. Die Laufzeitstatistiken zu jedem Cursor werden dabei kumuliert. Diese
Utility kann die Cursor sortiert ausgeben. In den meisten Problem-Fällen reicht die folgen-
de Sortierung aus: prsela exeela fchela, welche die Cursor nach der Laufzeit sortiert. Ein
Aufruf von tkprof kann für diese Sortierung folgendermaßen aussehen:
tkprof "D:\Oracle\diag\rdbms\db11\db11\trace\db11_ora_2260.trc" trace.out sort="prsela exeela
fchela"
Bei dieser Einstellung stehen die problematischen Cursor mit der größten Laufzeit vorn
in der Ausgabe von tkprof. Da die Utility tkprof sehr ausführlich in der Dokumentation
von Oracle und in den zehlreichen Büchern beschrieben ist, bringe ich hier keine weiteren
Einzelheiten.
6.1.7.1 Weitere Möglichkeiten zum Aktivieren des SQL-Tracing
Mit dem Package DBMS_MONITOR, welches ab Oracle 10g zur Verfügung steht, ist es
möglich, das SQL-Tracing auch für
Search WWH ::




Custom Search