一、主要用途:
采用对应用系统无侵入的方式,截获并记录应用系统访问数据库的所有记录,并进行初步分析后,得出对数据库索引的建立建议。
二、配置和使用步骤:
1、配置待测试应用系统
添加P6Spy.jar,并修改应用的数据库驱动为“com.p6spy.engine.spy.P6SpyDriver” 。
2、配置P6Spy
将spy.properties放在应用的classes目录下,然后将原来的JDBC驱动类配置到P6spy的配置文件spy.properties中的realdriver项就可以了。注意尽量不要修改其他配置,尤其是其中的logger配置。
3、启动SQLProfiler
SQLProfile是一个独立的应用程序,启动方式为在sqlprofiler.jar所在目录中执行命令行:java –jar sqlprofiler.jar命令。
4、执行测试:
然后启动应用,或者在执行应用需要监控的操作之前启动SQLProfiler也可。可以根据实际情况灵活使用。
至此,直接操作应用和SQLProfiler界面进行监控、分析即可得到。
三、附录: P6Spy + SQLProfiler项目绍
1、P6spy
P6spy是一个基于Java的开源的项目,它所能实现的功能就是将应用系统访问数据库的情况记录下来,它所记录的数据包括发送的实际语句、预编译语句、语句执行的时间、执行语句消耗时间、执行语句的数据库连接编号等。
其格式为:
1124430077712|266|1|statement||select
count(*) as nodeTotalNum from wr_Activity where procinstid= ?| select count(*)
as nodeTotalNum from wr_Activity where procinstid= 1
表示在2005.08.19 01:41:17.712时编号为1的statement向数据库发送了“select count(*) as nodeTotalNum from wr_Activity where
procinstid= 1”的SQL请求,它的与编译语句为“select count(*) as
nodeTotalNum from wr_Activity where procinstid= ?”,该语句在数据库中的执行时间为266毫秒。
P6spy的优点就是不侵入应用系统,而且非常容易配置。 P6spy官方网站http://www.p6spy.com/documentation/index.htm。
2、SQLProfiler
从上面的P6spy的介绍中我们可以看到,P6spy生成的记录是一个被格式化后的字符串,阅读起来比较困难,更不利于分析。SQLProfiler是一个基于Java的开源项目(已经中止),它能够将P6spy记录的日志通过一个界面来显示出来。
SQLProfiler是一个单独运行的Java应用程序,它和P6spy是通过Java socket来进行通讯的。SQLProfiler运行后启动一个服务并不断的监听指定端口,当P6spy需要记录日志时就会通过socket连接到SQLProfiler发送日志信息。
SQLProfiler不仅仅使P6spy记录文件易于阅读,它还对数据库执行过的语句进行分类和统计,统计出这些SQL语句的执行次数、总执行时间以及这类语句在所有的数据库语句执行时间中所占用的比例。另外对一些条件查询和更新语句还分析出该语句涉及到数据库表的那些字段(便于建立索引)并能自动生成创建数据库索引语句。
另外:Sqlprofiler还提供了简单的分析功能,它能够通过折线图的形式直观的表示发生的语句数量与时间的关系、向数据发送数据量于时间关系以及数据库输出数据量与实践的关系。
- 大小: 20.4 KB
分享到:
相关推荐
P6spy和SqlProfiler则是两个用于数据库性能监控和分析的工具。这篇内容将详细解释如何将这三者集成,以提升对数据库操作的监控效率。 【P6spy】 P6spy是一个开源的数据库监控工具,它能够拦截并记录应用程序与...
利用P6SPY +SQL Profiler调试、记录、统计web app对数据库的操作, 可以查看到PreparedStatment的执行最终的SQL语句。 有详细的操作说明 下面的这个是集成的完整版。。太大了就不上传了。自己下吧 jahia_v6_...
SQL Profiler是P6Spy的一个组件,用于对数据库操作进行详细分析,找出潜在的性能瓶颈。 配置WebLogic Server 11g与P6Spy和SQL Profiler的集成,主要涉及以下几个步骤: 1. **安装P6Spy**:首先,你需要下载P6Spy的...
总结来说,P6Spy和SQLProfiler是数据库管理员和开发者的有力工具,它们可以帮助我们无侵入地监控SQL行为,找出性能瓶颈,从而提升系统整体效率。通过深入理解和正确使用这两个工具,我们可以更好地优化数据库,提高...
总结来说,P6Spy和SqlProfiler是Java开发中不可或缺的数据库监控工具。它们能够帮助我们深入了解应用程序与数据库的交互,从而进行有效的性能优化和问题定位。在日常开发和维护过程中,正确使用这两个工具可以显著...
它的主要优势在于可以在不影响应用程序代码的情况下,提供数据库访问的日志,这对于诊断性能问题和调试SQL语句非常有用。配置P6Spy需要在应用的JDBC连接字符串中插入P6Spy的驱动,并在配置文件中设置日志格式和级别...
首先,P6Spy是一个开源的Java库,它允许开发者在不修改应用程序代码的情况下,对数据库访问进行透明监控。P6Spy通过拦截和记录SQL语句,为开发者提供了详细的日志信息,包括执行时间、连接信息等,有助于识别慢查询...
专门用来监控hibernate的sql输出,进行调试应用程序的工具,找了好久才找到,里面有个配置文件,记住realdriver是你的驱动,而在hibernate设置的驱动是这个驱动代理,p6spy的驱动,相当于在hibernate和数据库之间放...
p6spy和sqlProfiler的配合使用让你的hibernate的show_sql更好用 p6spy和sqlProfiler的配合使用让你的hibernate的show_sql更好用 p6spy和sqlProfiler的配合使用让你的hibernate的show_sql更好用
Spy++ 是一款强大的Windows系统监控工具,主要用于调试和分析应用程序的用户界面(UI)和窗口操作。这个绿色工具被封装在名为"spy++.zip"的压缩包中,无需安装即可直接使用,为开发者提供了一个便捷的环境来检测和...
64位 Spy++ 是一款专为64位操作系统设计的高效能、轻量级的Windows系统监控工具。这款工具主要用于帮助软件开发者、测试人员以及系统管理员深入理解Windows应用程序的内部运行机制,它提供了窗口、消息、过程以及...
总的来说,Spy++ Lite版是一个实用的工具,对于那些无法访问完整版Spy++的开发者来说,它提供了一个便捷的途径来观察和调试Windows应用程序的底层行为。通过学习和掌握这个工具,开发者可以更深入地理解Windows应用...
**标题:“spy lite spy++”** **描述:“spy++ 加强版,可获取窗口各类消息,灵活方便操作各类窗口”** **关键词:spylite、spy++** **正文:** `Spy Lite` 和 `Spy++` 是两种强大的Windows应用程序调试和分析...
《SPY++源代码解析与学习指南》 SPY++是一款强大的Windows系统监视工具,它由Microsoft提供,用于查看和分析Windows消息系统、线程、进程以及窗口等元素。源代码的学习是深入理解其工作原理的关键,对于软件开发者...
【C# Spy++源代码】是一个使用C#编程语言实现的工具,它的核心目标是复现和扩展微软经典的Spy++工具的功能。Spy++是Windows操作系统下的一款强大的系统级调试和监控工具,它允许开发者查看和分析运行中的Windows应用...
标题中的“类似SPY++的窗口查看器”指的是一个软件工具,它的功能类似于Microsoft的SPY++工具。SPY++是Windows系统下的一款强大的调试工具,主要用于监视和分析Windows窗口、消息、进程和线程。它能帮助程序员深入...
Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 内容 C#Spy++调用 ...
**SPY++16.00.28803(VS2019提取):深入理解Windows系统监控** Microsoft Spy++是一款由Microsoft开发的强大工具,它为开发者提供了深入洞察Windows操作系统的能力,包括窗口、消息、进程和线程的详细信息。这款...
Spy++ 是一款强大的Windows系统调试工具,主要用于监测和分析Windows应用程序的窗口、消息以及线程等行为。这个压缩包包含了32位和64位版本的Spy++工具,确保无论在哪种操作系统环境下都能进行有效分析。 1. **窗口...