如何檢視執行計畫

2021-07-31 10:56:28 字數 2053 閱讀 4696

如果plan_table表不存在,執行$oracle_home/rdbms/admin/utlxplan.sql建立plan_table表。

1.explain plan

forselect * from ......

2.select * from table(dbms_xplan.display);

二.使用oracle第三方工具:

plsql developer(f5)

toad (ctrl+e)

三.使用sql*plus:

如果plan_table表不存在,執行$oracle_home/rdbms/admin/utlxplan.sql建立plan_table表。

如果plustrace角色不存在,執行

$oracle_home/sqlplus/admin/plustrce.sql

1.sqlplus / as sysdba

set autotrace on;

關於autotrace幾個常用選項的說明:

set autotrace off ---------------- 不生成autotrace 報告,這是預設模式

set autotrace on explain ------ autotrace只顯示優化器執行路徑報告

set autotrace on statistics -- 只顯示執行統計資訊

set autotrace on ----------------- 包含執行計畫和統計資訊

set autotrace traceonly ------ 同set autotrace on,但是不顯示查詢

2.執行sql

四.sql trace

1.alter session set sql_trace=true;

2.執行sql

3.alter session set sql_trace=false;

4.檢視相應的sql trace檔案。

五.診斷事件(10046)

1.alter session set events '10046 trace name context forever,level 12';

2.執行sql

3.alter session set events '10046 trace name context off';

3.檢視相應的sql trace檔案。

可利用tkprof工具檢視跟蹤檔案

tkprof是乙個用於分析oracle跟蹤檔案並且產生乙個更加清晰合理的輸出結果的可執行工具。如果乙個系統的執行效率比較低,乙個比較好的方法是跟蹤使用者的會話並且使用tkprof工具的排序功能格式化輸出,從而找出有問題的sql語句。

tkprof命令後面的選項及輸出檔案各個列的含義在這裡不做詳細的介紹。google一下就會有很多資料。

下面簡單描述一下tkprof工具的使用步驟:

1、在session級別設定sql_trace=true

sys@orcl>alter session set sql_trace=true;

session altered.

如果要在pl/sql中對session級別設定true,可以使用dbms_system這個包:

sys@orcl> exec dbms_system.set_sql_trace_in_session(sid,serial#,true);

2、指定一下生成的trace檔案的名字,便於查詢:

sys@orcl>alter session set trace file_identifier='yourname';

3、執行sql語句。

4、利用tkprof工具格式化輸出的trace 檔案:

[oracle@q1test01~] $tkprof/oracle/admin/orcl/udump/orcl_ora_10266_yourname.trc/oracle/yourname.txtexplain=user/pwdaggregate=yessys=nowaits=yessort=fchela

5、檢視生成的檔案再設定sql_trace=false:

sys@orcl>alter session set sql_trace=false;

如何檢視oracle sql執行計畫

方法一 第一步 登入sql plus 執行命令 無先後順序 set time on 說明 開啟時間顯示 set autotrace on 說明 開啟自動分析統計,並顯示sql語句的執行結果 set autotrace traceonly 說明 開啟自動分析統計,不顯示sql語句的執行結果 二者選乙個...

oracle如何檢視執行計畫

1.在pl sql developer中得到乙個sql的執行計畫 輸入想要檢視執行計畫的目標sql,再按一下快捷鍵f5就可以了。2.explain plan 命令 explain plan for 目標sql select from table dbms xplan.display 3.dbms x...

如何檢視執行計畫以及執行計畫的準

如何檢視執行計畫以及執行計畫的準確性 很多朋友都問過我優化sql的事情。我覺得在我不斷地鼓勵下,很多朋友現在都知道優化sql之前要先看看執行計畫,也在優化中獲得了很多快樂。但是今天有人問我執行計畫應該怎麼看。我覺得這是個值得寫一寫的東西。先告訴大家乙個原則,看執行計畫的時候,從第一行開始向右下看,一...