DB2動態(tài)SQL的使用
下文對DB2動態(tài)SQL的使用進行了詳細的說明,供您參考,如果您在DB2動態(tài)SQL使用方面遇到過問題,不妨一看,相信對您會有所啟迪。
DB2動態(tài)SQL可以用snapshot查看
,存儲過程里SQL語句的執(zhí)行情況用event monitor查看。
(先挖個坑,以后補充)
補充1:event monitor(轉(zhuǎn)載)
運行事件監(jiān)視器
與snapshot不同,事件監(jiān)視器對DB2 的性能影響極大。這是由于為每個事件對象寫的信息的數(shù)量造成的。語句監(jiān)視器對性能的影響極大,因為數(shù)據(jù)庫引擎必須為每個查詢執(zhí)行所有額外的工作:不只是能夠執(zhí)行查詢,DB2 引擎還必須寫出這條查詢的所有特征和運行時信息。該信息必須寫入文本文件,這樣會進一步降低性能。
首先,必須創(chuàng)建事件監(jiān)視器,運行監(jiān)視器來收集將要分析的數(shù)據(jù)。 rkmon是事件監(jiān)視器的名稱 
打開一個新的 DB2 命令行處理器會話,然后執(zhí)行以下DB2 UDB 命令: 
db2 => connect to dbname
db2 => update monitor switches using statement on
db2 => create event monitor rkmon for statements write to file '/db2'
db2 => set event monitor rkmon state=1
           
使該會話一直處于打開狀態(tài),直到這些數(shù)據(jù)庫活動完成。請確保 /db2 目錄有足夠大的空間來保存跟蹤文件。這里選擇 /db2目錄是因為所有用戶都可以訪問該目錄;但也可以選擇使用其它目錄(請確保對于該目錄,DB2 有訪問權限)。目錄的大小取決于用戶想要捕獲的 SQL 語句的數(shù)目。一開始,***設為 500 MB。 
執(zhí)行正常的數(shù)據(jù)庫活動,直到您想監(jiān)控的時段結(jié)束。這一監(jiān)控階段可以是問題產(chǎn)生時期,也可以是通常的數(shù)據(jù)庫活動過程。在 /db2 目錄下,您應該可以看到一組擴展名為“ .evt ”的文件。
回到在步驟 1 中所打開的會話,然后發(fā)出以下語句: 
db2 => set event monitor rkmon state=0
db2 => terminate
在平常的命令提示符下,執(zhí)行以下命令: 
$ db2evmon -path /db2 > sqltrace.txt
刪除rkmon
drop event monitor rkmon
以上就是DB2動態(tài)SQL的使用介紹。
【編輯推薦】















 
 
 
 
 
 
 