1 啟用autotrace
1.1 以sys使用者,執行utlxplan.sql
sqlplus / as sysdba
sql> @$oracle_home/rdbms/admin/utlxpls.sql
1.2 通過執行plustrce.sql指令碼建立plustrace角色
sql> @$oracle_home/sqlplus/admin/plustrce.sql
1.3 授權
將 plustrace 角色授予當前使用者(無 dba 角色的使用者),或者grant plustrace to public;
2 設定autotrace的命令
序號
命令
解釋
1
set autotrace off
此為預設值,即關閉autotrace
2
set autotrace on
產生結果集和解釋計畫並列出統計
3
set autotrace on explain
顯示結果集和解釋計畫不顯示統計
4
setautotrace traceonly
顯示解釋計畫和統計,儘管執行該語句但您將看不到結果集
5
set autotrace traceonly statistics
只顯示統計
eg:set autotrace on, set timing on, alter session set time_statistics=true;
3 autotrace執行計畫的各列的涵義
序號
列名
解釋
1
id_plus_exp
每一步驟的行號
2
parent_id_plus_exp
每一步的parent的級別號
3
plan_plus_exp
實際的每步
4
object_node_plus_exp
dblink或並行查詢時才會用到
4autotrace statistics常用列解釋
序號
列名
解釋
1
db block gets
從buffer cache中讀取的block的數量
2
consistent gets
從buffer cache中讀取的undo資料的block的數量
3
physical reads
從磁碟讀取的block的數量
4
redo size
dml生成的redo的大小
5
sorts (memory)
在記憶體執行的排序量
6
sorts (disk)
在磁碟上執行的排序量
oracle如何看執行計畫
文章寫的不錯,原文請看 另外,最近公司舉行sql優化大賽,下面是自己的一些總結 1.首先要理解sql的意圖,這樣才能等價的改寫出sql 2.要保證執行的正確性 比如這次的left join,還有上次的建立序列 3.建立索引是第一步,建立索引後要考慮索引能否被用到 執行計畫是否走所建的索引,索引欄位上...
oracle如何檢視執行計畫
1.在pl sql developer中得到乙個sql的執行計畫 輸入想要檢視執行計畫的目標sql,再按一下快捷鍵f5就可以了。2.explain plan 命令 explain plan for 目標sql select from table dbms xplan.display 3.dbms x...
如何查詢oracle執行計畫 總結
第一種 explain plan命令 plsql devoloper中的f5鍵在內部也是呼叫的此命令 用法 依次執行以下語句 explain plan for 目標sql select from table dbms xplan.display 第二種 使用dbms xplan包 1 select ...