學習動態效能表(十)--V$SESSION_LONGOPS
學習動態效能表第十篇--V$SESSION_LONGOPS
本檢視顯示執行超過6秒的操作的狀態。包括備份,恢復,統計資訊收集,查詢等等。
要監控查詢執行進展狀況,你必須使用cost-based最佳化方式,並且:
設定TIMED_STATISTICS或SQL_TRACE引數值為true。
透過ANALYZE或DBMS_STATS資料包收集物件統計資訊。
你可以透過DBMS_APPLICATION_INFO.SET_SESSION_LONGOPS過程新增application-specific長執行操作資訊到本檢視。關於DBMS_APPLICATION_INFO.SET_SESSION_LONGOPS的更多資訊可以瀏覽:Oracle Supplied PL/SQL Packages and Types Reference。
V$SESSION_LONGOPS列說明
SID:Session標識
SERIAL#:Session串號
OPNAME:操作簡要說明
TARGET:操作執行所在的物件
TARGET_DESC:目標物件說明
SOFAR:至今為止完成的工作量
TOTALWORK:總工作量
UNITS:工作量單位
START_TIME:操作開始時間
LAST_UPDATE_TIME:統計項最後更新時間
TIME_REMAINING:預計完成操作的剩餘時間(秒)
ELAPSED_SECONDS:從操作開始總花費時間(秒)
CONTEXT:前後關係
MESSAGE:統計項的完整描述
USERNAME:執行操作的使用者ID
SQL_ADDRESS:用於連線查詢的列
SQL_HASH_VALUE:用於連線查詢的列
QCSID:
示例:
找一較大表,確認該表查詢將超過6秒,哎呀讓它快我們沒把握,讓它慢這可是我的強項啊~~
SQL> set timing on
SQL> create table ttt as select level lv,rownum rn from dual connect by level<10000000; --建立一個臨時表
Table created
Executed in 19.5 seconds
SQL> commit;
Commit complete
Executed in 0 seconds
SQL> select * from (select * from ttt order by lv desc) where rownum<2; --執行一個費時的查詢
LV RN
---------- ----------
9999999 9999999
Executed in 9.766 seconds --哈哈,成功超過6秒
SQL> select sid,opname,sofar,totalwork,units,sql_hash_value from v$session_longops; ----看看v$session_longops中是不是已經有記錄了
SID OPNAME SOFAR TOTALWORK UNITS SQL_HASH_VALUE
---------- ---------------------------------------------------------------- ---------- ---------- -------------------------------- --------------
10 Table Scan 47276 47276 Blocks 2583310173
Executed in 0.047 seconds
SQL> select a.sql_text from v$sqlarea a,v$session_longops b where a.HASH_VALUE=b.SQL_HASH_VALUE; --透過hash_value聯絡查詢出剛執行的查詢語句。
SQL_TEXT
--------------------------------------------------------------------------------
select * from (select * from ttt order by lv desc) where rownum<2
Executed in 0.063 seconds
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/751371/viewspace-561513/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 利用v$session_longops監控長操作SessionGo
- 動態生成表-判斷表是否存在效能對比
- 動態規劃學習筆記動態規劃筆記
- 【乾貨】動態規劃十問十答動態規劃
- 總結 | 動態規劃十問十答動態規劃
- 跟我一起學習和開發動態表單系統-動態表單系統的技術實現與優勢(2)
- 機器學習的靜態特徵和動態特徵機器學習特徵
- 動態元件與v-on元件
- 【MyBatis學習總結 (五),動態SQL】MyBatisSQL
- 李沐動手學深度學習V2-chap_preliminaries深度學習
- 【react】實現動態表單中巢狀動態表單React巢狀
- Vue.js基礎學習(三) -------------動態繫結v-bind的介紹和使用Vue.js
- ABAP動態內表
- angular動態表單Angular
- 動手學強化學習(四):動態規劃演算法強化學習動態規劃演算法
- java反射之動態代理學習筆記Java反射筆記
- Python學習筆記6——動態型別Python筆記型別
- 動態規劃演算法(DP)學習<1>動態規劃演算法
- iOS Tangram(VirtualView)動態元件的學習與使用iOSView元件
- Python學習之路38-動態建立屬性Python
- vue 動態繫結 v-modelVue
- 動態繫結 input v-model
- rman備份的時候讀取v$session_longops失敗導致備份失敗SessionGo
- 8.1關於動態效能檢視
- 跟我一起學習和開發動態表單系統-資料庫設計(1)資料庫
- 第十週學習總結
- gRPC入門學習之旅(十)RPC
- 程式十步學習法
- Google Protocol buffer 學習筆記.下篇-動態編譯GoProtocol筆記編譯
- Unity學習-程式碼中動態生成預製體Unity
- 笨辦法學C 練習34:動態陣列陣列
- 強化學習(三)用動態規劃(DP)求解強化學習動態規劃
- Tomcat學習筆記—-本地部署servlet動態資源Tomcat筆記Servlet
- formly-form 動態表單ORM
- db2常用動態效能檢視DB2
- 高效能網路SIG月度動態:virtio-net 支援動態中斷調節,SMC v2 協議增加新擴充套件協議套件
- Vue學習04-----v-bloak和v-htmlVueHTML
- 元素週期表應加上氧化態?機器學習破解晶體結構的氧化態機器學習
- 我的十步學習法