查看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 閱讀(9753) 評論(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

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


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


          網站導航:
           

          公告

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

          導航

          <2013年12月>
          24252627282930
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 滨州市| 铁岭县| 荔浦县| 普宁市| 全南县| 孟州市| 尼勒克县| 高安市| 凌云县| 柞水县| 格尔木市| 大城县| 民和| 乌兰察布市| 毕节市| 宜兰市| 镇雄县| 普格县| 璧山县| 封丘县| 泰州市| 新闻| 玛多县| 江油市| 杨浦区| 多伦县| 潼关县| 双鸭山市| 迁安市| 通城县| 通道| 阜阳市| 龙川县| 同德县| 大连市| 沙洋县| 南岸区| 伽师县| 青河县| 浙江省| 莲花县|