您好,登錄后才能下訂單哦!
本篇內容主要講解“六種常用的sql執行計劃查看方式介紹”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“六種常用的sql執行計劃查看方式介紹”吧!
一、explain play
PL/SQL中的F5鍵
explain plan for sql語句
select * from table(dbms_xplan.display)
explain plan for 后將執行計劃寫入了plan_table$中,select * from table(dbms_xplan.display)就是將具體的步驟以格式化的形式寫出來
二、dbms_xplan包
select * from table(dbms_xplan.display) 執行完explain plan for sql語句 后可以用這個直接查詢
select * from table(dbms_xplan.display_cursor(null,null,'advanced')); 執行完某sql ,可以緊接著執行這條來查看執行計劃
select * from table(dbms_xplan.display_cursor('sql_id/hash_value',child_cursor_number,'advanced')); 查看指定sql_id/hash_value的執行計劃
select * from table(dbms_xplan.display_awr('sql_id')); 查看指定sql_id的歷史執行計劃,前面2和3需要執行計劃還是share pool里,才能采集到,如果已經清空或者age out 出了share pool,則只能通過這個方法,從awr repository中得到執行計劃
三、set autot
set autot on
set autot trace
set autot trace exp
set autot trace stat
set autot off
四、10046與tkprof
與上面三種相比,10046明確了sql實際執行計劃中每一步的邏輯讀,物理讀和花費的時間
步驟
1、激活10046事件 alter session set events '10046 trace name context forever,level 12'; 或oradebug event 10046 trace name context forever,level 12;
2、執行sql
3、關閉10046事件alter session set events '10046 trace name context off' 或oradebug event 10046 trace name context off;
上面四種辦法的前三種,得出的執行計劃有可能是不準的
到此,相信大家對“六種常用的sql執行計劃查看方式介紹”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。