gdufo

           

          學習動態性能表 第十篇--V$SESSION_LONGOPS 2007.6.7

           

          本視圖顯示運行超過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

           

          posted on 2009-11-17 14:34 gdufo 閱讀(134) 評論(0)  編輯  收藏 所屬分類: Database (oracle, sqlser,MYSQL)

          導航

          統計

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          Hibernate

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 昌都县| 三河市| 咸阳市| 敖汉旗| 梁平县| 通道| 佛坪县| 鞍山市| 万源市| 塔城市| 安泽县| 碌曲县| 青河县| 汉川市| 资中县| 浮梁县| 兴安盟| 鲜城| 德昌县| 长海县| 双桥区| 宁城县| 大渡口区| 杭锦旗| 桓台县| 乌拉特前旗| 陇川县| 大田县| 黎平县| 皋兰县| 汤原县| 隆回县| 柞水县| 深水埗区| 三门峡市| 图木舒克市| 太原市| 赣榆县| 明光市| 宁国市| 调兵山市|