大家好,很高兴来到博客园分享自己的所见所得。希望和大家多多交流,共同进步。

本文重点在于简介使用BenchmarkSQL对oracle进行tpcc的测试步骤,只是一个简单入门的过程。

开源测试工具:BenchmarkSQL。

平台:windows
之前也使用过hammerDB这个测试工具,但是它给的输出结果的单位是tpm,而不是tpmc。所以不是特别直观,因此选择了BenchmarkSQL。

BenchmarkSQL简单介绍:目前仍然在维护,现在可选择的最新版本是BenchmarkSQL-4.1.0版本。但是2.3版本以后停止了对windows的支持。基于本文的测试环境是windows,所以选择了2.3版本。

测试步骤:

1.安装必要的软件

1.1 jdk
1.2 BenchmarkSQL.
1.3 oracle

我使用的是jdk1.7,BenchmarkSQL-2.3,oracle11gXE版本。

2.建oracle的tpcc测试用户

2.1先建表空间tpcctab
create tablespace tpcctab
logging
datafile 'D:\oraclexe\app\oracle\oradata\XE\tpcctab_data.dbf'
size 32M
autoextend on
next 32M maxsize 2048M
extent management local;

2.2建立改表空间下的用户tpcc
create user tpcc identified by tpcc
default tablespace tpcctab
temporary tablespace temp;

2.3给tpcc赋予见表的权限
grant connect to tpcc;
grant create table to tpcc;
grant resource to tpcc;

3.配置BenchmarkSQL
在BenchmarkSQL/run下面,修改oracle.properties文件。
内容为(我的):
driver=oracle.jdbc.driver.OracleDriver
conn=jdbc:oracle:thin:@localhost:1521:xe
user=tpcc
password=tpcc
这些其实就是java代码中连接oracle数据库的参数。

4.创建TPC-C基础表
TPC-C一共9个表,现在需要建对应的表。
执行 runSQL.bat oracle.properties sqlTableCreates
如果需要删除表,执行 runSQL.bat oracle.properties sqlTableDrops

可以在oracle的tpcc用户下执行:select table_name from user_tables;
看到如下9张表:

5.
向Warehouse导入数据

比如建立10个Warehouses,执行loadData.bat oracle.properties numWarehouses
10
你会发现oracle下的data下,TPCCTAB_DATA.DBF有将近900M大小。

6. 为基础表创建必要的索引
这一步可执行也可不执行。
执行:runSQL.bat oracle.properties sqlIndexCreates

7.运行runBenchmark.bat进行测试
执行runBenchmark.bat
oracle.properties ,并设置相关参数。

可以按自己的需求选择各个参数,注意Warehouses的大小。


最后点击create,成功后并点击start开始测试。
测试结果会实时的显示在图形界面的最下面。

这样就完成了整个测试过程。

祝好。

转载请注明出处,谢谢~  http://www.cnblogs.com/xiaoboCSer/p/3661124.html

【原创】oracle的tpc-c测试及方法的更多相关文章

  1. oracle 索引失效原因及解决方法

    oracle 索引失效原因及解决方法 2010年11月26日 星期五 17:10 一.以下的方法会引起索引失效 ‍1,<>2,单独的>,<,(有时会用到,有时不会)3,like ...

  2. Oracle自定义数据类型 2 (调用对象方法)

    调用对象方法 调用对象方法基于类型创建表后,就可以在查询中调用对象方法 A. 创建基于对象的表语法: create   table   <表名>   of   <对象类型>意义 ...

  3. Oracle中对列加密的方法

    Oracle中对列加密的方法 2011-12-22 17:21:13 分类: Linux Oracle支持多种列加密方式: 1,透明数据加密(TDE):create table encrypt_col ...

  4. [原创]浅谈H5页面性能优化方法

    [原创]浅谈H5页面性能优化方法 前阶段公司H5页面性能测试,其中测试时也发现了一些性能瓶颈问题,接下来我们在来谈谈H5页面性能优化,仅仅是一些常用H5页面性能优化措施,其实和Web页面性能优化思路大 ...

  5. Nmap渗透测试使用方法

    Nmap渗透测试使用方法 目标选择2 端口选择2 操作系统和服务检测2 Nmap输出格式2 用NSE脚本深入挖掘2 HTTP服务信息3 检测SSL漏洞问题的主机3 设备扫描3 按VNC扫描5 按SMB ...

  6. 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节

    1:MSSQL SQL语法篇: BULK INSERT [ database_name . [ schema_name ] . | schema_name . ] [ table_name | vie ...

  7. 【SQL】Oracle分页查询的三种方法

    [SQL]Oracle分页查询的三种方法 采用伪列 rownum 查询前10条记录 ? 1 2 3 4 5 6 7 8 9 10 11 [sql] select * from t_user t whe ...

  8. Oracle表空间数据文件移动的方法

    最近遇到这样的一个问题,Oracle存放表空间文件的盘符 空间不够了,必须把部分表空间迁移出去, [转]http://www.jb51.net/article/77026.htm 实现把用户表空间中的 ...

  9. ORACLE导入、导出命令使用方法

    oracle导入.导出命令使用方法: 给用户增加导入数据权限的操作 第一,启动sql*puls 第二,以system/manager登陆 第三,create user 用户名 IDENTIFIED B ...

随机推荐

  1. PHP 魔术方法(所有的魔术方法)

    慢慢长寻夜,明月高空挂. 目前PHP所有的魔术方法有一下这些 __construct() __destruct() __call() __callStatic() __get() __set() __ ...

  2. QQ音乐API分析记录

    我一直是QQ音乐的用户,最近想做一个应用,想用QQ音乐的API,搜索了很久无果,于是就自己分析QQ音乐的API. 前不久发现QQ音乐出了网页版的,是Flash的,但是,我用iPhone打开这个链接的时 ...

  3. window.print打印指定div实例代码

    window.print可以打印网页,但有时候我们只希望打印特定控件或内容,怎么办呢,请看下面的例子 首先我们可以把要打印的内容放在div中,然后用下面的代码进行打印. 复制代码代码如下: <h ...

  4. 6个好用的Web开发工具

    在过去的几年间,涌现出了很多Web开发工具,它们大多还是比较吸引人的,方便了我们的工作.我们可以学习一下这些新东西,短时间就可以拓宽思路(PHP100推荐:学习10分钟,改变你的程序员生涯).这些应用 ...

  5. AngularJS快速开始

    Hello World! 开始学习AngularJS的一个好方法是创建经典应用程序“Hello World!”: 使用您喜爱的文本编辑器,创建一个HTML文件,例如:helloworld.html. ...

  6. Demo学习: Dialogs Anonymous Callback

    Dialogs\Dialogs Anonymous Callback 窗体回调函数使用. 1. 标准回调函数 ShowMessage(const Msg: string; CallBack: TUni ...

  7. make问题:make[1] entering directory

    执行make distclean命令.

  8. 查看某一个点是否在某个多边形内 使用ST_Contains函数

    查看某一个点是否在某个多边形内  使用ST_Contains函数 --LINESTRING ( 121.312350 30.971457 , 121.156783 31.092221 , 121.35 ...

  9. touches获得手指点击的坐标

    -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { UITouch *touch = [touches anyObjec ...

  10. lua通过bunlde读注意事项

    把lua脚本做成bundle,加载字符串,变成lua对象: lua loadstring("name")() 注意:loadstring的问题: 无法访问全局local变量,需要改 ...