使用sql monitor獲取更加詳細的執行計劃 - dbms_sqltune.report_sql_monitor
在資料庫上執行SQL語句,執行完畢或執行過程中可以透過如下語句查詢到
SQL_ID 。
select * from v$sql
where sql_text like '%SELECT BOOK.DESCRIPTION AS%'
order by first_load_time desc ;
(2). 在資料庫上執行如下語句。
select dbms_sqltune.report_sql_monitor(type=>'TEXT', sql_id=>'4t6jwa8nrg0dp',report_level=>'ALL') monitor_report from dual;
點選查詢出來的"HUGECLOB"值,可以看到TEXT格式的詳細執行計劃(最好儲存
為txt後以ultraEdit工具開啟,看得比較清晰,這裡不貼出來)。一般在SQL執行
後1-3分鐘內可以取到結果,SQL執行超過一定時間後查詢不出執行計劃(已經被刪除)。
注意:不是所有的SQL都會被monitor到,如果沒有看到執行計劃,可以在SQL中加入
提示 /*+monitor*/ 強制對SQL進行監控。
-------------------------------------------------------------------
在Oracle 11g之前的版本,長時間執行的SQL可以透過監控v$session_longops來觀察,當某
個操作執行時間超過6秒,就會被記錄在v$session_longops中,通常可以監控到全表掃描、
全索引掃描、雜湊聯接、並行查詢等操作;而在Oracle 11g中,當SQL並行執行時,會立即
被實時監控到,或者當SQL單程式執行時,如果消耗超過5秒的CPU或I/O時間,它也會被監
控到。監控資料被記錄在v$sql_monitor檢視中,也可以透過Oracle 11g新增的package
DBMS_MONITOR來主動對SQL執行監控部署。
v$sql_monitor收集的資訊每秒重新整理一次,接近實時,當SQL執行完畢,資訊並不會立即從
v$sql_monitor中刪除,至少會保留1分鐘,v$sql_plan_monitor檢視中的執行計劃資訊
也是每秒更新一次,當SQL執行完畢,它們同樣至少被保留1分鐘。檢視執行計劃type有
多種:
type=>'TEXT'
type=>'HTML'
type=>'ACTIVE'
-------------------------------------------------------------------
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2558328/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 獲取oracle sql語句詳細些執行計劃OracleSQL
- 獲取SQL執行計劃SQL
- 獲取SQL執行計劃的方式:SQL
- 【sql調優之執行計劃】獲取執行計劃SQL
- Oracle 獲取SQL執行計劃方法OracleSQL
- 執行計劃-1:獲取執行計劃
- 獲取執行計劃的方法
- MySQL 5.7獲取指定執行緒正在執行SQL的執行計劃資訊MySql執行緒
- 【執行計劃】Oracle獲取執行計劃的幾種方法Oracle
- 使用 EXPLAIN PLAN 獲取SQL語句執行計劃 (R0.1)AISQL
- sql的執行計劃 詳解SQL
- Oracle獲取執行計劃的方法Oracle
- 介紹幾種獲取SQL執行計劃的方法(上)SQL
- oracle 9i 獲取sql執行計劃(書寫長的sql)OracleSQL
- 獲取執行計劃之Autotrace
- 【檢視】使用V$SQL_PLAN檢視獲取曾經執行過的SQL語句執行計劃SQL
- 執行計劃__獲取方法、檢視執行順序、統計資訊詳解
- 如何獲取真實的執行計劃
- 獲取執行計劃的6種方法
- 達夢資料庫獲取SQL真實的執行計劃資料庫SQL
- 微課sql最佳化(9)、如何獲取執行計劃SQL
- Oracle 獲取執行計劃的幾種方法Oracle
- sql執行計劃變更和刪除快取中執行計劃的方法SQL快取
- MySQL explain執行計劃詳細解釋MySqlAI
- oracle dbms_xplan獲取執行計劃Oracle
- Oracle中SQL調優(SQL TUNING)之最權威獲取SQL執行計劃大全OracleSQL
- SQL的執行計劃SQL
- 使用sql profile固定執行計劃SQL
- 根據SQL Id獲得SQL語句的執行計劃SQL
- 利用statspack來獲取生成環境中top SQL及其執行計劃SQL
- sql 執行計劃SQL
- 理解索引:MySQL執行計劃詳細介紹索引MySql
- 會話的跟蹤以及執行計劃的獲取會話
- 使用dbms_xplan包來獲得sql語句的執行計劃SQL
- Oracle10g如何獲取執行計劃Oracle
- 使用PL/SQL檢視執行計劃SQL
- 獲得目標SQL語句執行計劃的方法SQL
- 物化檢視重新整理遞迴SQL獲取執行計劃報錯遞迴SQL