使用p6spy進(jìn)行數(shù)據(jù)庫(kù)操作執(zhí)行時(shí)間的記錄極大的方便了數(shù)據(jù)庫(kù)程序的調(diào)優(yōu),結(jié)合SQL Profile使用,可以非常直觀的看到sql語(yǔ)句的耗時(shí)等,使用方法非常簡(jiǎn)單,
- 下載p6spy和sql profile兩個(gè)項(xiàng)目文件,解壓, 將p6spy.jar放到項(xiàng)目的class path中
- 將spy.properties放到項(xiàng)目的class目錄下,若在Eclipse中開發(fā),可以放到src目錄下
- 修改spy.properties文件,將realdriver=com.ibm.db2.jcc.DB2Driver 替換成相應(yīng)數(shù)據(jù)庫(kù)的驅(qū)動(dòng)類。
- 修改項(xiàng)目原有的數(shù)據(jù)庫(kù)驅(qū)動(dòng),替換成jdbc.driverClassName=com.p6spy.engine.spy.P6SpyDriver
- 這樣就可以生成spy.log文件了,其中記錄每個(gè)sql執(zhí)行的時(shí)間,但這樣瀏覽不直觀,且難于分析,接下來就需要sql profile。
SQL Profile是使用java寫的一個(gè)gui程序,旨在分析p6spy生成的log文件,其使用方法如下:
- 將下載的sql profile解壓,其中包含spy.properties文件,修改其中的數(shù)據(jù)庫(kù)驅(qū)動(dòng)類,并將其替換掉原來的spy.properties文件。
- 運(yùn)行sqlprofiler.jar文件,這個(gè)文件是一個(gè)可執(zhí)行的jar文件。
- 啟動(dòng)需要測(cè)試的項(xiàng)目,進(jìn)行常規(guī)的操作即可在sql profile中看到結(jié)果。使用圖如下:
?
此外,sql profile可以進(jìn)行遠(yuǎn)程的測(cè)試,使用方法為:修改日志所要連接的服務(wù)器和端口,這個(gè)即為sqlprofiler.jar運(yùn)行的服務(wù)器和設(shè)定的端口。
log4j.appender.SQLPROFILER_CLIENT=org.apache.log4j.net.SocketAppender
log4j.appender.SQLPROFILER_CLIENT.RemoteHost=localhost
log4j.appender.SQLPROFILER_CLIENT.Port=4445
?
最后贊一個(gè),這個(gè)小軟件確實(shí)非常方便,等到生產(chǎn)機(jī)器上,將數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)修改掉即可完成,相當(dāng)方便。另外IronTrack SQL也是不錯(cuò)的工具,可以參加
http://www.ibm.com/developerworks/cn/java/j-lo-p6spy/index.html#resources
下載地址
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
