<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    itstarting:IT進行時

    想自己所想,做自己所愛

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      28 隨筆 :: 3 文章 :: 55 評論 :: 0 Trackbacks

    ??? 以前在項目中使用iBatis,最痛苦的莫過于看到的sql為PreparedStatment輸出的一串串"?"的東東。當時也沒多想,認為自己寫的pstmt就是這么個模樣,難不成人家還會自動照顧到你?

    ?? 這幾天才“忽然”發現P6Spy這么個好東西,拿來一試,果真不錯。

    ?? 一般使用步驟,言簡意賅吧:

    ? 1、下載:

    ??? p6spy: http://www.p6spy.com
    ??? SQL Profile: http://www.jahia.net/jahia/page597.html

    ? 2、安裝:

    ??? 很簡單,把p6spy-1.x.jar和sqlprofiler.jar拷貝到自己的應用的WEB-INF/lib下即可。

    ? 3、配置:

    ??? 1)修改你 原有 JDBC Driver為:com.p6spy.engine.spy.P6SpyDriver,如果你用了連接池,一回事,把driver換掉;
    ??? 2)修改 spy.properties 中的 realdriver 值為 原有 的JDBC Driver,比如我的是:realdriver=com.ibm.db2.jcc.DB2Driver
    ??? 3) 還有,注意把appender設置正確:
    #The following are for log4j logging only
    #log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
    #log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
    #log4j.appender.STDOUT.layout.ConversionPattern=p6spy - %m%n

    log4j.appender.SQLPROFILER_CLIENT=org.apache.log4j.net.SocketAppender
    log4j.appender.SQLPROFILER_CLIENT.RemoteHost=localhost
    log4j.appender.SQLPROFILER_CLIENT.Port=4445
    log4j.appender.SQLPROFILER_CLIENT.LocationInfo=true

    #log4j.logger.p6spy=INFO,STDOUT
    log4j.logger.p6spy=DEBUG, SQLPROFILER_CLIENT

    ? 4、一般使用:

    ??? 1)在DOS命令行切換到剛才的WEB-INF/lib目錄下,運行:java -jar sqlprofiler.jar,即可啟動SQL Profiler的GUI界面;
    ??? 2)正常啟動服務,允許web server,即可在SQL Profiler的GUI界面看到所有的JDBC操作。

    ? 5、高級應用SQL Profiler:

    ??? 1)可以生成SQL執行情況報表:點擊“pause”按鈕,即可產生profiler result;
    ??? 2)很cool的是,點擊最左邊的按鈕,可以根據整個運行情況生成數據庫索引的創建腳本,我們可以根據這些腳本生成自己的數據庫索引,數據庫tuning的工作是不是變得越來越簡單or傻瓜了呢?呵呵。
    ??? 3)其他的包括圖形分析報表,自己挖掘吧;
    ??? 4)如果用loadRunner、web stress tool等壓力測試工具run一把,那么這個報表和索引創建建議就更加逼真和有效了。


    ??FAQ:

    ??? 1)開始配置好后,著急想看效果,結果老是發現connection refused的錯誤,郁悶了半天,找了半天資料才發現必須先啟動SQL Profiler(參考步驟4-1),再啟動應用才是正確的步驟。why?好奇人多了,簡單的答案就是SQL Profiler把JDBC WRAP了一下,此時會先行與數據庫建立一個socket連接,否則這些SQL怎么來,就是這么回事。

    posted on 2006-05-30 14:01 IT進行時 閱讀(6519) 評論(4)  編輯  收藏 所屬分類: Java Tips

    評論

    # re: SQL Profiler + P6Spy 完全配置手冊 2006-05-30 15:46 lizongbo
    //簡單的答案就是SQL Profiler把JDBC WRAP了一下,此時會先行與數據庫建立一個socket連接.

    錯的太離譜了!!!

    那是因為SQL Profiler的spy.properties里把logger設置成log4j的SocketAppender。
    這樣p6spy在啟動的時候就會讓Appender去連接SQL Profiler開啟的端口,
    如果連接失敗,之后不會再創建socket。因此必須先啟動SQL Profiler.
    仔細看spy.properties的配置代碼,不要亂誤導。


    log4j.appender.SQLPROFILER_CLIENT=org.apache.log4j.net.SocketAppender
    log4j.appender.SQLPROFILER_CLIENT.RemoteHost=localhost
    log4j.appender.SQLPROFILER_CLIENT.Port=4445
    log4j.appender.SQLPROFILER_CLIENT.LocationInfo=true  回復  更多評論
      

    # re: SQL Profiler + P6Spy 完全配置手冊 2008-12-13 11:32 today
    為什么我的總是連接不起,在界面上的最下面是紅的連接失敗的提示,不知道是什么原因,能告訴我為什么嗎?急!!!  回復  更多評論
      

    # re: SQL Profiler + P6Spy 完全配置手冊 2008-12-13 11:33 today
    可發郵件給我today.doing@gmial.com  回復  更多評論
      

    # re: SQL Profiler + P6Spy 完全配置手冊 2011-01-18 15:30 IT進行時
    陳年老帖了
    補充一點關于HSQLDB的配置:
    # hsqldb
    realdriver=org.hsqldb.jdbcDriver
    realdriver2=org.hsqldb.jdbc.JDBCDriver

    deregisterdrivers=true

    其他都一樣  回復  更多評論
      


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


    網站導航:
     
    主站蜘蛛池模板: 国产黄在线播放免费观看| 在线毛片片免费观看| 精品久久久久成人码免费动漫 | 无码乱人伦一区二区亚洲一| 久久精品蜜芽亚洲国产AV| 亚洲欧美熟妇综合久久久久| 青青操在线免费观看| 国产亚洲av片在线观看18女人| 亚洲国产精品久久网午夜| 亚洲免费观看网站| 2017亚洲男人天堂一| 最近中文字幕无吗高清免费视频| 亚洲国产成人久久综合一区77| 国产午夜亚洲精品不卡电影| 亚洲av区一区二区三| 好男人资源在线WWW免费| 国产成A人亚洲精V品无码| 免费人成视频在线播放| 久久亚洲色一区二区三区| 日本在线看片免费| 亚洲成人免费电影| 成人免费毛片观看| 一级做a爱片特黄在线观看免费看| 成人免费AA片在线观看| 久久久亚洲欧洲日产国码aⅴ | jizzjizz亚洲日本少妇| 最近最新MV在线观看免费高清| 亚洲色偷偷色噜噜狠狠99网| 免费看小12萝裸体视频国产| 最新亚洲春色Av无码专区| 国产一区二区三区在线观看免费| EEUSS影院WWW在线观看免费| 亚洲精品中文字幕无码AV| 免费看的黄色大片| 激情亚洲一区国产精品| 亚洲国产精品第一区二区三区| 久久国产免费观看精品| 亚洲啪AV永久无码精品放毛片| 亚洲一区二区视频在线观看| 一边摸一边爽一边叫床免费视频| 亚洲AV综合色区无码另类小说|