捕獲DB2 sql的執行快照

          先建立一個監控器

          db2 "create event monitor SQLCOST for statements write to file '/home/db2inst1'"

          再設置事務狀態為打開

          db2 "set event monitor SQLCOST state=1"

          注:1為打開,0為關閉,收集數據之后,記得關閉你的監控器,否則。。。

          跑你的測試后,在你的/home/db2inst1目錄下會生成一些evm文件

          用下面指令獲取診斷信息:

          db2evmon -db eos51 -evm SQLCOST>sqlcost1.txt

          完成之后刪除你的監控器

          db2 "drop event monitor SQLCOST"

          生成的采樣例子,從下面的例子中,你可以清除的看到SQL執行的時間,CPU消耗情況,排序是否溢出,BufferPool的使用情況,根據這些信息,SQL的執行效率一目了然:

          26) Statement Event ...

          Appl Handle: 336

          Appl Id: C0A80421.O905.0ABDA5065446

          Appl Seq number: 0657

          Record is the result of a flush: FALSE

          -------------------------------------------

          Type : Dynamic

          Operation: Execute

          Section : 7

          Creator : NULLID

          Package : SYSSN300

          Consistency Token : SYSLVL01

          Package Version ID :

          Cursor : SQL_CURSN300C7

          Cursor was blocking: FALSE

          Text : update WFProcessInst set relateData=? where processInstID= ?

          -------------------------------------------

          Start Time: 04/25/2007 14:57:19.402248

          Stop Time: 04/25/2007 14:57:19.409622

          Exec Time: 0.007374 seconds

          Number of Agents created: 1

          User CPU: 0.000000 seconds

          System CPU: 0.000000 seconds    [licl1]

          Fetch Count: 0

          Sorts: 0

          Total sort time: 0

          Sort overflows: 0    [licl2]

          Rows read: 1

          Rows written: 1

          Internal rows deleted: 0

          Internal rows updated: 0

          Internal rows inserted: 0

          Bufferpool data logical reads: 9

          Bufferpool data physical reads: 0

          Bufferpool temporary data logical reads: 0

          Bufferpool temporary data physical reads: 0

          Bufferpool index logical reads: 3

          Bufferpool index physical reads: 0

          Bufferpool temporary index logical reads: 0

          Bufferpool temporary index physical reads: 0    [licl3]

          SQLCA:

          sqlcode: 0

          sqlstate: 00000


          [licl1]SQL執行時間和CPU消耗情況

          [licl2]SQL的排序情況,可以看到這個SQL沒有排序,當然也沒有排序溢出

          [licl3]Bufferpool的使用情況,邏輯讀和物理讀的對比

          del.icio.us Tags: , ,

          posted on 2007-10-30 12:59 tacy lee 閱讀(561) 評論(0)  編輯  收藏 所屬分類: 性能相關數據庫

          主站蜘蛛池模板: 龙岩市| 孝昌县| 白玉县| 应城市| 宁国市| 布尔津县| 昭苏县| 松原市| 永和县| 修水县| 桐柏县| 邵东县| 伊川县| 泉州市| 上栗县| 阳原县| 甘孜| 大渡口区| 岳阳县| 凤阳县| 甘谷县| 蓝山县| 南康市| 法库县| 综艺| 湖南省| 马鞍山市| 高台县| 苏尼特右旗| 齐河县| 长治市| 巫溪县| 新平| 赣榆县| 苍山县| 东乡族自治县| 洪江市| 屏山县| 金阳县| 南郑县| 共和县|