Um einen Ausführungsplan der Oracle Datenbank inklusive tatsächlicher Messwerte anzuzeigen, sind drei Schritte nötig:
Aktiviert alle Messungen (optional)
Ausführen der SQL-Anweisung
Abrufen des Ausführungsplanes
Aktivieren aller Messungen
Damit der Ausführungsplan am Ende alle Werte, wie zum Beispiel die Laufzeit pro Operation enthält, muss man das Sammeln dieser Messwerte aktivieren. Das kann man entweder mit dem Hint /*+ GATHER_PLAN_STATISTICS */
in der Anweisung selbst machen, oder generell für die aktuelle Session aktivieren.
alter session set statistics_level = 'ALL'
Ausführen der SQL-Anweisung
Das Ausführen der Anweisung führt dazu, dass der Ausführungsplan im Cache (SQL Area) abgelegt wird. Wenn die Laufzeitmessungen aktiviert wurden, wird der Ausführungsplan um diese Messungen ergänzt.
select * from dual
Abrufen des Ausführungsplanes
Das Paket DMBS_XPLAN
kann einen Ausführungsplan aus der SQL Area anzeigen. Das folgende Beispiel zeigt, wie man den zuletzt erstellten Ausführungsplan der aktuellen Datenbanksession abruft:
select * from table(dbms_xplan.display_cursor(null, null,
'LAST ALLSTATS +COST'))
Das Ergebnis wird wie aus dem Buch bekannt dargestellt.
---------------------------------------------------------------
| Operation | Name | E-Rows | Cost | A-Rows | A-Time |.
---------------------------------------------------------------
| SELECT STATEMENT | | | 2 | 1 | 00.01 |.
| TABLE ACCESS FULL| DUAL | 1 | 2 | 1 | 00.01 |.
---------------------------------------------------------------
Einige der angezeigten Spalten wurden aus Platzgründen entfernt.