Oracle如何手動重新整理執行計劃
1.根據sql_id查詢sql 記憶體地址及雜湊值
s elect s.SQL_TEXT, s.ADDRESS || ',' || s.HASH_VALUE from v$sqlarea s where sql_id = '5z2gcdv62mwuv' ;
2.將該執行計劃從shared pool 中消除
exec sys.dbms_shared_pool.purge('00000024792EE028,93546278','c');
3.查詢現在的該sql的執行計劃
select * from v$sql_plan where sql_id = '2qphk9c83y57m';
4.查詢sql的歷史的執行計劃
select s.begin_interval_time,
s.end_interval_time,
q.snap_id,
q.dbid,
q.sql_id,
q.plan_hash_value,
q.optimizer_cost,
q.optimizer_mode
from dba_hist_sqlstat q, dba_hist_snapshot s
where q.sql_id = '&SQL'
and q.snap_id = s.snap_id
order by s.snap_id desc;
5.查詢執行計劃內容
select * from table(dbms_xplan.display_cursor('',null,'ADVANCED')); --allstats lastselect * from table(dbms_xplan.display_cursor(' 9twgdt8qut16j '));
select * from table(dbms_xplan.display_ awr ( ' bfu4f625xjvra ' ,null,'ADVANCED'));
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69993859/viewspace-2753737/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle手動固定SQL執行計劃OracleSQL
- 【SPM】Oracle如何固定執行計劃Oracle
- oracle如何檢視執行計劃Oracle
- ORACLE執行計劃Oracle
- Oracle執行計劃Explain Plan 如何使用OracleAI
- Oracle SQL_Profile手動生成及繫結sql執行計劃OracleSQL
- oracle 固定執行計劃Oracle
- Oracle sql執行計劃OracleSQL
- oracle sqlprofile 固定執行計劃,並遷移執行計劃OracleSQL
- 啟動執行計劃
- 如何看懂執行計劃!
- 【執行計劃】Oracle獲取執行計劃的幾種方法Oracle
- 【Oracle】-【索引-HINT,執行計劃】-帶HINT的索引執行計劃Oracle索引
- Oracle 執行計劃 分析和動態取樣Oracle
- 知識篇 | ORACLE 如何執行計劃繫結Oracle
- Oracle10g如何獲取執行計劃Oracle
- Oracle如何檢視真實執行計劃(一)Oracle
- Oracle執行計劃詳解Oracle
- oracle固定執行計劃--sqlprofileOracleSQL
- Oracle 索引和執行計劃Oracle索引
- Oracle閱讀執行計劃Oracle
- oracle執行計劃相關Oracle
- oracle 執行計劃變更Oracle
- 【優化】Oracle 執行計劃優化Oracle
- oracle 執行計劃設定Oracle
- RMAN自動執行計劃
- 在Oracle中,如何得到真實的執行計劃?Oracle
- Oracle-繫結執行計劃Oracle
- Oracle檢視執行計劃(五)Oracle
- Oracle檢視執行計劃(六)Oracle
- Oracle檢視執行計劃(一)Oracle
- Oracle檢視執行計劃(二)Oracle
- Oracle檢視執行計劃(三)Oracle
- Oracle檢視執行計劃(四)Oracle
- 看懂Oracle中的執行計劃Oracle
- ORACLE執行計劃的介紹Oracle
- ORACLE執行計劃 explain說明OracleAI
- ORACLE:什麼是執行計劃Oracle