最近,公司的项目要同时支持三种数据库:mysql、神通、达梦。因此需要对三种数据库的性能进行比对。
1>在进行数据库写压力测试时,开源工具dbmonster,个人感觉配置比较简单,用起来也比较方便、灵活。不过网上找的配置教程,一般在最后一步,执行:dbmonster.bat -c dbmonster.properties -s dbmonster-schema.xml, 总是报错,提示找不到Main类。
后来打开dbmonster.bat发现,在执行以下命令时出错:
java -classpath %CLASSPATH% pl.kernelpanic.dbmonster.Launcher %*
因为我在系统环境变量中设置的CLASSPATH是带空格的(如"Program File"),这样会导致%CLASSPATH%解析错误,需要在%CLASSPATH%加双引号,如下:
java -classpath "%CLASSPATH%" pl.kernelpanic.dbmonster.Launcher %*
再次运行dbmonster.bat -c dbmonster.properties -s dbmonster-schema.xml就不会报错了,可以正常的写入数据。
2>还有,在执行时,经常提醒数据库连接的用户不存在,后来发现,是dbmoster.properties里面的:
dbmonster.jdbc.username=admin
"admin"后面多了一个空格,看来dbmonster进行配置文件读取时,没有进行空格的处理,所以导致用户名不存在,将空格去除后,可以正常连接了。
3>网上的教程,都说dbmonster-core-1.0.3版本,含有BinaryGenerator,这个用来往数据库中写入Blob的类,但是实际的dbmonster-core-1.0.3.jar包中,不含有这个类,因此无法往数据库中写入Blob数据。需要从网上下一个dbmonster-core-1.0.4.jar的jar包,和dbmonster-core-1.0.3.jar放在同一级目录下,即可解决Blob的读写问题。(dbmonster-core-1.0.4.jar包见附件)
4>dbmonster主要用来对数据库进行压力写的测试,查看java控制台,可以看到,dbmonster启动了10个左右的线程,去并行访问数据库进行写操作。
5>如果要对数据库进行高并发读测试,可以采用jmeter,配置,使用也比较简单,网上很多教程。
分享到:
相关推荐
- Siege:另一个开源的Web服务器压力测试工具。 - StressMark:开源的性能测试工具。 - DBMonster:开源数据库性能测试工具。 3. 白盒测试/代码分析工具: - VcTest:用于C++代码的静态分析工具。 - ezTester...
20. **DBMonster**:数据库负载和压力测试工具,适用于大型数据库系统的测试。 #### 白盒测试工具 1. **Jest**:Java的单元测试和代码标准校验工具,支持代码覆盖率分析。 2. **C++Test**:针对C++源代码进行...
2. DBMonster:这是一款用于SQL数据库压力测试的工具,生成随机数据以测试数据库性能,适用于跨平台操作。 3. OpenSTA (Open System Testing Architecture):基于CORBA的分布式测试架构,能够模拟大量虚拟用户,...
2. DBMonster:此工具用于压力测试SQL数据库,通过生成随机数据来评估数据库性能,可在任何操作系统上运行。 3. OpenSTA:基于CORBA的分布式测试架构,可用于模拟大量虚拟用户进行负载测试,其结果分析全面,适用于...
- **JMeter**:一个多功能的负载测试工具,支持对各种类型的服务器进行压力测试,包括HTTP、HTTPS、FTP等。 - **OpenSTA**:另一个性能测试工具,特别适合Web应用的性能测试。 - 更多性能测试工具可以访问[此链接]...