查看oracle執行計劃

          日常開發活動中,有時候需要對oracle執行計劃進行監控,以此來調優程序和數據庫方面的性能。

          常用方法有以下幾種:

          一、通過PL/SQL Dev工具

              1、直接File->New->Explain Plan Window,在窗口中執行sql可以查看計劃結果。其中,Cost表示cpu的消耗,單位為n%,Cardinality表示執行的行數,等價Rows。

              2、先執行 EXPLAIN PLAN FOR   select * from tableA where paraA=1,再 select * from table(DBMS_XPLAN.DISPLAY)便可以看到oracle的執行計劃了,看到的結果和1中的一樣,所以使用工具的時候推薦使用1方法。

          注意:PL/SQL Dev工具的Command window中不支持set autotrance on的命令。還有使用工具方法查看計劃看到的信息不全,有些時候我們需要sqlplus的支持。


          二、通過sqlplus

              1、一般情況都是本機鏈接遠程服務器,所以命令如下:
                      sqlplus user/pwd@serviceName
                  此處的serviceName為tnsnames.ora中定義的命名空間。
              2、執行set autotrace on,然后執行sql語句,會列出以下信息:
              
          。。。(省略一些信息)
          統計信息
          ----------------------------------------------------------
                    1  recursive calls (歸調用次數)
                    0  db block gets 
                    2  consistent gets
                    0  physical reads (物理讀——執行SQL的過程中,從硬盤上讀取的數據塊個數)
                    0  redo size (重做數——執行SQL的過程中,產生的重做日志的大小)
                  358  bytes sent via SQL*Net to client
                  366  bytes received via SQL*Net from client
                    1  SQL*Net roundtrips to/from client
                    0  sorts (memory)     在內存中發生的排序
                    0  sorts (disk)     在硬盤中發生的排序
                    1  rows processed

          省略部分信息和通過PL/SQL Dev工具查看執行計劃的信息一樣,下面的統計信息是更詳細的。

          判斷SQL效率高低不關通過時間來衡量,還應該通過執行SQL執行狀態里面的邏輯讀的數量
              邏輯讀=(db block gets+ consistent gets)

          posted on 2009-08-12 10:49 andy.kong 閱讀(9754) 評論(7)  編輯  收藏 所屬分類: oracle

          評論

          # re: 查看oracle執行計劃 2009-08-12 12:24 移動12530彩鈴

          地方結果看見風大哥  回復  更多評論   

          # re: 查看oracle執行計劃 2009-08-12 13:21 fengzl

          感謝感謝這個很有用  回復  更多評論   

          # re: 查看oracle執行計劃[未登錄] 2009-08-12 16:33 AAA

          總結的不錯  回復  更多評論   

          # re: 查看oracle執行計劃 2009-08-13 09:00 yuanhao

          學習了,另外提示一下,應該是autotrace不是autotrance  回復  更多評論   

          # re: 查看oracle執行計劃 2009-08-13 09:05 andy.kong

          @yuanhao

          謝謝,筆誤:)
            回復  更多評論   

          # re: 查看oracle執行計劃[未登錄] 2009-11-16 16:36 gaga

          很有用謝謝  回復  更多評論   

          # re: 查看oracle執行計劃 2013-12-03 23:49 aosica

          謝謝分享 非常受用  回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          公告

          師者,所以傳道授業解惑也!

          導航

          <2009年8月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 吴川市| 扬中市| 长岛县| 郓城县| 聂荣县| 舞阳县| 郴州市| 河东区| 龙山县| 广州市| 乐山市| 西乌珠穆沁旗| 锦州市| 天等县| 山阳县| 吴忠市| 静宁县| 保亭| 个旧市| 堆龙德庆县| 长武县| 乡城县| 南靖县| 竹北市| 越西县| 孙吴县| 达孜县| 济阳县| 彩票| 微山县| 安西县| 衡水市| 青岛市| 呈贡县| 晋中市| 嵊州市| 娄底市| 弥渡县| 当雄县| 瑞丽市| 井研县|