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

本文重点在于简介使用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. python pil 安装

    Ubuntu下 sudo pip install pil 安装PIL可能会出现问题,例如安装完成时显示JPEG support not available 或者 ZLIB (PNG/ZIP) supp ...

  2. Unity编程回忆录之控制物体移动

    最新心血来潮,然后开始学习Unity3D游戏开发引擎,对于一个主流的跨平台3D游戏开发引擎,我已经深深的为他着迷了,于是果断的开始学习这个引擎,而且刚刚预装的游戏引擎最新版中4.3版本已经开始原生支持 ...

  3. 真正的inotify+rsync实时同步 彻底告别同步慢

    真正的inotify+rsync实时同步 彻底告别同步慢       http://www.ttlsa.com/web/let-infotify-rsync-fast/     背景 我们公司在用in ...

  4. ShowMask

    <html> <head> <script type="text/javascript"> function showMask(){ var a ...

  5. C++中delete和delete[]的区别

    C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]. 关于 new[] 和 delete[],其中又 ...

  6. 1011. World Cup Betting (20)(最大值)

    With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excite ...

  7. UVA 524

    Description   A ring is composed of n (even number) circles as shown in diagram. Put natural numbers ...

  8. WebApp之 apple-touch-icon

    在iPhone,iPad,iTouch的safari上可以使用添加到主屏按钮将网站添加到主屏幕上.apple-touch-icon是IOS设备的私有标签,如果设置了相应apple-touch-icon ...

  9. sqlplus连接数据库的4种方式

    本文对sqlplus连接数据库的几种方式进行大概介绍 下面是我的tnsnames.ora相关信息: /opt/oracle/product/10.1.0/db_1/network/admin/tnsn ...

  10. js时间格式的转换

    function System_dateInit(value) {     if (value != null) {         var d = new Date(value);          ...