V$SESSION_LONGOPS

weifenghq發表於2009-01-20

本檢視顯示執行超過6秒的操作的狀態。包括備份,恢復,統計資訊收集,查詢等等。

要監控查詢執行進展狀況,你必須使用cost-based最佳化方式,並且:

l 設定TIMED_STATISTICSSQL_TRACE引數值為true

l 透過ANALYZEDBMS_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列說明

l SIDSession標識

l SERIAL#Session串號

l OPNAME:操作簡要說明

l TARGET:操作執行所在的物件

l TARGET_DESC:目標物件說明

l SOFAR:至今為止完成的工作量

l TOTALWORK:總工作量

l UNITS:工作量單位

l START_TIME:操作開始時間

l LAST_UPDATE_TIME:統計項最後更新時間

l TIME_REMAINING:預計完成操作的剩餘時間()

l ELAPSED_SECONDS:從操作開始總花費時間()

l CONTEXT:前後關係

l MESSAGE:統計項的完整描述

l USERNAME:執行操作的使用者ID

l SQL_ADDRESS:用於連線查詢的列

l SQL_HASH_VALUE:用於連線查詢的列

l 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

Ps:itpub論壇的fenng版版數年前有篇文章描述了v$sessin_longops的來源,有興趣的朋友可以研究研究:

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/633084/viewspace-1016345/,如需轉載,請註明出處,否則將追究法律責任。

相關文章