1 Swingbench 简述
1.1 概述
这是Oracle UK的一个员工在一个被抛弃的项目的基础上开发的。目前稳定版本2.2,最新版本2.3,基于JDK1.5。该工具是免费的,可以在作者的网站上自由下载,并且拥有详细的使用文档。除了Swingbench,作者还开发了两个相关工具:测试数据生成工具DataGenerator和跟踪文件分析工具Trace Analyzer。
Swingbench可以执行4种不同的标准测试(benchmark),拥有三种前端展示方式Swingbench/Charbench/Minibench,其中Charbench是字符模式的,另外两种是GUI模式的。另外还可以通过ClusterOverview可以聚合显示所有的结果。
Swingbench的开发目的主要是用来展示RAC的负载和测试,但也可用于单实例环境。最新的2.3版本开始支持TimesTen内存数据库。
下载地址:http://www.dominicgiles.com/downloads.html
文档地址:http://www.dominicgiles.com/Swingbench.pdf
2 Swingbench for windows安装
2.1 解压swingbench压力测试软件
首先在作者网站上下载最新的2.3版本,文件名swingbench230422.zip,大小为9M左右
截压在D:swingbench230422swingbench
解压后目录结构如下图所示:
swingbench (Top Level Directory, contains Swingbench.env)
|
+-- bin (Linux/Unix executables)
| |
| +-- sample (sample config files)
| |
| +-- data (data used by benchmarks)
| |
| +-- schema (xml schemas for config files)
|
+-- lib (Java Libraries i.e. *.jar)
|
+-- source (source code & build scripts for transactions)
|
+-- sql (sql scripts used by the wizards to create the schemas)
|
+-- winbin (Windows executables)
2.2 安装JDK
因为运行这个软件需要java支持,我这里下载的jdk 1.5 for windows安装包
介质名为jdk-1_5_0-windows-i586.exe
2.3 安装oracle 10g 客户端
因为在windows下面是客户端,需要安装oci或jdbc连接到p595 aix服务器
介质名为10201_client_win32.zip
2.4 配置环境变量swingbenchenv.bat如下所示:
REM Set the following to reflect the root directory of your Java installation
set JAVAHOME=C:jdk15
REM Set the following to the directory where you installed swingbench
set SWINGHOME=D:swingbench230422swingbench
REM Set the following to the location of your TimesTen install (optional)
set TTHOME=C:TimesTentt70
REM If you don't have the ORACLE_HOME environment variable set uncomment the following and change it to reflect your environment
SET ORACLE_HOME=F:oracleproduct10.2.0db_1
set ANTHOME=%SWINGHOME%lib
set CLASSPATH=%JAVAHOME%librt.jar;%SWINGHOME%libmytransactions.jar;%SWINGHOME%libswingbench.jar;
REM The following is needed for 10g environments
set CLASSPATH=%CLASSPATH%;%ORACLE_HOME%jdbclibojdbc14.jar;%ORACLE_HOME%opmnlibons.jar
REM The following is only needed for 11g environments
set CLASSPATH=%CLASSPATH%;%ORACLE_HOME%jdbclibojdbc5.jar
REM The following is only needed for TimesTen environments
set CLASSPATH=%CLASSPATH%;$TTHOME/lib/classes15.jar
3 配置swingbench 连接到数据库,创建表空间,用户,表订单等
3.1 配置tnsnames.ora文件
FSYYK =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 11.4.128.89)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 11.4.128.91)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = fsyyk)
)
)
3.2 运行$SWINGHOME/winbin目录下的oewizard.bat文件
输入jdbc或oci连接方法
jdbc为//主机名或ip地址:1521/sid或services_name
oci为tnsnames.ora中的服务名
以便创建表空间和用户,表结构等
4 运行$SWINGHOME/winbin/swingbench.bat进行压力测试
选择配好的jdbc或oci连接
然后输入用户数,相关订单事物数,就可以进行压力测试了