如何使用swingbench进行oracle数据库压力测试

2014-10-06 08:09:02

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://xjsunjie.blog.51cto.com/999372/1560779

swingbench是一款网络上开源的oracle压力测试工具,支持oracle 11g版本,还能对rac进行测试。从官方页面http://dominicgiles.com/downloads.html上可以下载最新的软件版本。

swingbench可以运行在windows和linux平台,本次测试采用linux平台,具体测试过程如下:

1、首先使用VMVARE10搭建一个redhat6.5的虚拟机。

2、在虚拟redhat6.5上安装ORACLE11G的数据库。

3、使用oewizard导入测试数据,可以根据向导提示进行数据导入。

yum install -y java

4、使用swingbench进行压力测试。

测试步骤:

1、导数据之前需要修改temp表空间大小,使其能够容纳下相应的导入数据

mkdir -p /home/oracle/oradata/orcl

create temporary tablespace temp1 tempfile '/home/oracle/oradata/orcl/temp1.dbf' size 100m;

alter database default temporary tablespace temp1;

drop tablespace TEMP;

create temporary tablespace temp tempfile '/home/oracle/oradata/orcl/temp.dbf' size 1g;

alter database default temporary tablespace temp;

drop tablespace temp1;

(也可用rm删除temp1.dbf)

上述操作也可通过EM管理界面直接将TEMP表空间扩到1G.

2、安装swingbench测试软件,直接解压缩即可运行。

unzip -x swingbench25919.zip

注意要按照java8

yum -y install java-1.8.0-openjdk*

3、进入swingbench/bin目录执行oewizard导入1G测试数据,并修改数据库连接名和DBA密码

输入导入数据文件存放位置:

选择导入1G数据:

数据导完之后在该目录下运行swingbench执行测试,修改数据库连接名,用户连接数设置为300,测试时间设置为10分钟

修改Distributed Controls用于测试过程中搜集测试监控信息,修改完之后测试连接是否正常,并可以统计主机的cpu  disk IO 信息

还可以拉出AWR报表

设置 insert,update ,select的比例

设置完成之后,点击左上角绿色按钮执行测试

测试过程截图

测试结果可保持为XML文档,最后查看显示如下

------------

我们可以使用swingbench这个工具对数据库性能进行压力测试,得到一些性能指标作为参考。
SwingBench下载:
http://www.dominicgiles.com/downloads.html

参考相关文章:
http://www.linuxidc.com/Linux/2016-04/130297.htm
http://blog.csdn.net/xiaofan23z/article/details/7978998

实验环境:
RHEL 6.5 + Oracle 11.2.0.4 RAC + SwingBench 2.5.0.971

1. 生成swingbench配置文件
swingbench解压即可使用,第一次需要配置,本次只是简单熟悉swingbench的使用,配置基本按照默认。

[oracle@jyrac1 bin]$ pwd
/home/oracle/swingbench/bin
[oracle@jyrac1 bin]$ ./oewizard


注意,上面的connect string,根据需求填写,比如:
--如果压测只连接实例1
jyrac1:1521:jyzhao1

--如果压测只连接实例2
jyrac2:1521:jyzhao2

--如果压测连接RAC集群,LB到各个实例
//jyrac1/jyzhao


2. 运行swingbench压力测试

可以大致看到压力测试中,数据库可以达到的TPM,TPS等性能指标,作为今后系统正式上线后的一个参考依据

如何使用swingbench进行oracle数据库压力测试的更多相关文章

  1. 关于oracle数据库压力测试

    今天接到需求,需要对oracle数据库进行压力测试,就这几个字的需求. 然后查看了以下软件: 1.Benchmark Factory是一款专业的服务器性能测试工具,专为数据库测试和可扩展性测量而设计, ...

  2. [数据库]000 - 🍳Sysbench 数据库压力测试工具

    000 - Sysbench 数据库压力测试工具 sysbench 是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据库的性能测试.目前支持的数据库有 ...

  3. ORACLE 数据库简单测试

    ORACLE 数据库简单测试 操作系统:Windows 7 – ORACLE:oracle database 10.2.0.4 一.目的 测试 启动监听程序.数据库  非同一个用户的情况,用户是否可以 ...

  4. python mysql数据库压力测试

    python mysql数据库压力测试 pymysql 的执行时间对比 1,装饰器,计算插入1000条数据需要的时间 def timer(func): def decor(*args): start_ ...

  5. Jmeter--Mysql数据库压力测试

    前提环境要求:首先下载合适的数据库驱动 传送门:https://mvnrepository.com/artifact/mysql/mysql-connector-java 将下载好的驱动放到Jmete ...

  6. sysbench数据库压力测试

    sysbench是一款压力测试工具,可以测试系统的硬件性能,也可以用来对数据库进行基准测试 wget https://github.com/akopytov/sysbench/archive/1.0. ...

  7. mysqlslap 一个MySQL数据库压力测试工具

    在Xen/KVM虚拟化中,一般来说CPU.内存.网络I/O的虚拟化效率都非常高了,而磁盘I/O虚拟化效率较低,从而磁盘可能会是瓶颈.一般来说,数据库对磁盘I/O要求比较高的应用,可以衡量一下在客户机中 ...

  8. mysql之 mysql数据库压力测试工具(mysqlslap)

    mysqlslap是从MySQL的5.1.4版开始就开始官方提供的压力测试工具.通过模拟多个并发客户端并发访问MySQL来执行压力测试,同时提供了较详细的SQL执行数据性能报告,并且能很好的对比多个存 ...

  9. 【转】使用JMeter对数据库做压力测试

    作为一名开发人员,大多情况下都会认真的做好功能测试,但是却常常忽略了软件开发之后的压力测试,尤其是在面向大量用户同时使用的Web应用系统的开发过程,压力测试往往是不够充分的.近期我在一个求职招聘型的网 ...

随机推荐

  1. HDU 2895 贪心 还是 大水题

    DESCRIPTION:大意是给你两个字符串.编辑距离只有add和delete会产生.所以.编辑距离最短一定是两个字符串的长度差.然后...呵呵呵呵.... 猜题意就可以了...但是...我觉得这个题 ...

  2. CAS 服务端数据库认证

    CAS-服务端数据库认证 数据认证需要相关的jar包: cas-server-support-jdbc-x.x.x.jar MySQL-connector-Java-x.x.x-bin.jar 修改C ...

  3. canvas环形进度条

    <style> canvas { border: 1px solid red; margin: 100px; }</style> <canvas id="rin ...

  4. php json 解析有stdClass Object 解决办法

    php json 解析有stdClass Object mixed json_decode ( string $json [, bool $assoc = false [, int $depth = ...

  5. <二叉树的基本操作>

    #include<stdio.h> #include<stdlib.h> #include<string.h> #define num 100 #define OK ...

  6. 12个有趣的 XSS Vector

    XSS Vector #1 <script src=/〱20.rs></script> URL中第二个斜杠在Internet Explorer下(测试于IE11)可被U+303 ...

  7. 大数开根号java模板

    利用逼近的思路直接二分开方找出值 package lanqiao; import java.math.BigInteger; import java.util.Scanner; public clas ...

  8. fork调用实验-缓冲区相关

    先看下面一段代码: #include <unistd.h> #include <stdio.h> ; char buf[] = "a write to stdout\ ...

  9. linux配置禁用启用IPv6

    IPv6被认为是IPv4的替代产品,它用来解决现有IPv4地址空间即将耗尽的问题.但目前,开启IPv6可能会导致一些问题.因此有时我们需要关闭IPv6.下面是IPv6的关闭方法应该适用于所有主流的Li ...

  10. google-protobuf安装详解

    前言 编译调试项目的过程中涉及到caffe的编译,提示没有安装protobuf的错误,本文详解protobuf的安装: 问题描述 解决步骤 1.查看google protobuf的github,没有直 ...