Database Reference
In-Depth Information
6.1.3
Ermittlung des Ausführungsplans in der SQL-Area, im Statspack-
Repositoty und im AWR
Ausführungspläne der Cursor aus der SQL-Area sind in der View V$SQL_PLAN zu fin-
den. Man kann einen Ausführungsplan entweder mit einem Select aus dieser View ermit-
teln oder die Funktion DBMS_XPLAN.DISPLAY_CURSOR dafür benutzen.
FUNCTION DISPLAY_CURSOR RETURNS DBMS_XPLAN_TYPE_TABLE
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
SQL_ID VARCHAR2 IN DEFAULT
CURSOR_CHILD_NO NUMBER(38) IN DEFAULT
FORMAT VARCHAR2 IN DEFAULT
Wie bei der Funktion DBMS_XPLAN.DISPLAY (s. im Abschn. 6.1.1) ist es zu empfehlen,
die Werte 'ALL' und 'ADVANCED ' für das Argument FORMAT dieser Funktion zu be-
nutzen. Die zwei weiteren Werte, welche bei der Ermittlung eines Ausführungplans mit
den Laufzeitstatistiken nützlich sind, beschreibe ich unten.
Die Laufzeitstatistiken eines Ausführungsplans befinden sich in der View V$SQL_
PLAN_STATISTICS. Stillschweigend werden diese Laufzeitstatistiken nicht erzeugt, weil
es ziemlich kostspielig ist. Man kann sie aber für einzelne Ausführungen der SQL-Anwei-
sungen generieren lassen (normalerweise beim SQL-Tuning). Das macht man entweder
mit der Parametereinstellung statistics _ level = all für eine Session
alter session set statistics_level=all;
oder mit dem Optimizer-Hint gather _ plan _ statistics für eine SQL-Anweisung.
select /*+ gather_plan_statistics */ * from dual;
Diese beiden Methoden werden nur bei der Parametereinstellung _ rowsource _ execution _
statistics = true funktionieren (der Wert TRUE ist der Vorgabewert dieses Parameters ).
Theoretisch könnte man die Laufzeitstatistiken der Ausführungspläne mit dem Komman-
do „ALTER SYSTEM“ systemweit erlauben. Für ein produktives System rate ich das aber
strengstens ab, weil man damit ernsthafte Performanz-Probleme verursachen kann.
Der Aufbau der View V$SQL_PLAN_STATISTICS sieht bei Oracle 11.2 folgenderma-
ßen aus.
Search WWH ::




Custom Search