Oracle sql執行計劃
--explain檢視SQL執行計劃
EXPLAIN PLAN FOR select count(*) from steven.AWEN_OGG_TEST;
select * from table(dbms_xplan.display());
--檢視AWR和CURSOR中的執行計劃
select * from table(dbms_xplan.display_awr('&sqlid'));
select * from table(dbms_xplan.display_cursor('&sqlid'));
--檢視記憶體中的執行計劃
select '| Operation |Object Name | Rows | Bytes| Cost |'
as "Explain Plan in library cache:" from dual
union all
select rpad('| '||substr(lpad(' ',1*(depth-1))||operation||
decode(options, null,'',' '||options), 1, 35), 36, ' ')||'|'||
rpad(decode(id, 0, '----------------------------',
substr(decode(substr(object_name, 1, 7), 'SYS_LE_', null, object_name)
||' ',1, 30)), 31, ' ')||'|'|| lpad(decode(cardinality,null,' ',
decode(sign(cardinality-1000), -1, cardinality||' ',
decode(sign(cardinality-1000000), -1, trunc(cardinality/1000)||'K',
decode(sign(cardinality-1000000000), -1, trunc(cardinality/1000000)||'M',
trunc(cardinality/1000000000)||'G')))), 7, ' ') || '|' ||
lpad(decode(bytes,null,' ',
decode(sign(bytes-1024), -1, bytes||' ',
decode(sign(bytes-1048576), -1, trunc(bytes/1024)||'K',
decode(sign(bytes-1073741824), -1, trunc(bytes/1048576)||'M',
trunc(bytes/1073741824)||'G')))), 6, ' ') || '|' ||
lpad(decode(cost,null,' ', decode(sign(cost-10000000), -1, cost||' ',
decode(sign(cost-1000000000), -1, trunc(cost/1000000)||'M',
trunc(cost/1000000000)||'G'))), 8, ' ') || '|' as "Explain plan"
from v$sql_plan sp
where sp.hash_value=&hash_value or sp.sql_id='&sqlid';
--檢視歷史執行計劃
select distinct SQL_ID,PLAN_HASH_VALUE,to_char(TIMESTAMP,'yyyymmdd hh24:mi:ss') TIMESTAMP
from dba_hist_sql_plan
where SQL_ID='&sqlid' order by TIMESTAMP;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69990629/viewspace-2742204/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle SQL Profile固定執行計劃的方法OracleSQL
- .Oracle固定執行計劃之SQL PROFILE概要檔案OracleSQL
- oracle 固定執行計劃Oracle
- 獲取oracle sql語句詳細些執行計劃OracleSQL
- Oracle資料庫關於SQL的執行計劃(轉)Oracle資料庫SQL
- 【TUNE_ORACLE】定製化執行計劃SQL參考OracleSQL
- Oracle檢視sql_id 的歷史執行計劃OracleSQL
- 【執行計劃】Oracle獲取執行計劃的幾種方法Oracle
- Oracle優化案例-從執行計劃定位SQL問題(三)Oracle優化SQL
- Oracle DB 相關常用sql彙總7【手工繫結sql執行計劃】OracleSQL
- Oracle調優之看懂Oracle執行計劃Oracle
- Oracle-繫結執行計劃Oracle
- Oracle利用coe_load_sql_profile指令碼繫結執行計劃OracleSQL指令碼
- 【SQL_PLAN】Oracle 透過檢視sql_plan 格式化執行計劃SQLOracle
- [ORACLE] SQL執行OracleSQL
- 如何檢視SQL的執行計劃SQL
- Oracle執行計劃Explain Plan 如何使用OracleAI
- Oracle檢視執行計劃的命令Oracle
- oracle使用outline固定執行計劃事例Oracle
- Oracle緊急固定執行計劃之手段Oracle
- 一次搞定各種資料庫SQL執行計劃:MySQL、Oracle、SQL Server、PostgreSQL以及SQLite資料庫MySqlOracleServerSQLite
- 執行計劃-1:獲取執行計劃
- Oracle優化案例-view merge與coe_load_sql_profile固定執行計劃(十五)Oracle優化ViewSQL
- MySQL——通過EXPLAIN分析SQL的執行計劃MySqlAI
- SQL優化案例-從執行計劃定位SQL問題(三)SQL優化
- Oracle 通過註釋改變執行計劃Oracle
- 知識篇 | ORACLE 如何執行計劃繫結Oracle
- Oracle如何檢視真實執行計劃(一)Oracle
- Oracle如何手動重新整理執行計劃Oracle
- SQL最佳化案例-從執行計劃定位SQL問題(三)SQL
- SQL執行計劃異常引起的效能問題SQL
- SQL執行計劃異常 引起的效能問題SQL
- Oracle - 執行過的SQL、正在執行的SQL、消耗資源最多的SQLOracleSQL
- 在Oracle中,如何得到真實的執行計劃?Oracle
- SQLServer統計監控SQL執行計劃突變的方法SQLServer
- oracle查詢sql執行耗時、執行時間、sql_idOracleSQL
- 分析執行計劃優化SQLORACLE的執行計劃(轉)優化SQLOracle
- spark sql語句效能最佳化及執行計劃SparkSQL