mysql性能测试工具之tpcc-mysql

1.安装配置

官网下载地址:
http://imysql.com/wp-content/uploads/2014/09/tpcc-mysql-src.tgz1. 用bzr客户端下载软件包
[[email protected] ~]# yum install bzr -y

[[email protected] ~]# bzr branch lp:~percona-dev/perconatools/tpcc-mysql
[[email protected] ~]# cd tpcc-mysql/src/
[[email protected] src]# make

[[email protected] tpcc-mysql]# ll
-rw-r--r--. 1 root root   1621 Apr 23 11:24 add_fkey_idx.sql
-rw-r--r--. 1 root root    317 Apr 23 11:24 count.sql
-rw-r--r--. 1 root root   3105 Apr 23 11:24 create_table.sql
-rw-r--r--. 1 root root    763 Apr 23 11:24 drop_cons.sql
-rw-r--r--. 1 root root    477 Apr 23 11:24 load.sh
-rw-r--r--. 1 root root    851 Apr 23 11:24 README
drwxr-xr-x. 2 root root   4096 Apr 23 11:24 schema2
drwxr-xr-x. 5 root root   4096 Apr 23 11:24 scripts
drwxr-xr-x. 2 root root   4096 Apr 23 11:25 src
-rwxr-xr-x. 1 root root  61191 Apr 23 11:25 tpcc_load        --make后生成的命令
-rwxr-xr-x. 1 root root 155886 Apr 23 11:25 tpcc_start       --make后生成的命令

2.创建数据库导入表结构
[[email protected] tpcc-mysql]# mysqladmin  create tpcc;
[[email protected] tpcc-mysql]# mysql tpcc < create_table.sql 
[[email protected] tpcc-mysql]#

3.加载测试数据(tpcc_load)
[[email protected] tpcc-mysql]# ./tpcc_load  --help
*************************************
*** ###easy### TPC-C Data Loader  ***
*************************************
usage: tpcc_load [server] [DB] [user] [pass] [warehouse]
OR
tpcc_load [server] [DB] [user] [pass] [warehouse] [part] [min_wh] [max_wh]
* [part]: 1=ITEMS 2=WAREHOUSE 3=CUSTOMER 4=ORDERS
[[email protected] tpcc-mysql]# ./tpcc_load  localhost tpcc root "" 100   --机械硬件仓库数不能少于100个,ssd硬件不能少于1000个

4.压力测试数据(tpcc_start)
[[email protected] tpcc-mysql]# ./tpcc_start  --help
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
./tpcc_start: invalid option -- ‘-‘
Usage: tpcc_start -h server_host -P port -d database_name -u mysql_user -p mysql_password -w warehouses -c connections -r warmup_time -l running_time -i report_interval -f report_file -t trx_file
-h      --mysql的主机
-P      --服务的端口
-d      --测试的数据库
-u      --用户名
-p      --密码
-w      --仓库个数
-c      --连接数
-r      --测试前热身的时间
-l      --测试运行的时间
-i      --生成报告时间
-f      --指定生成报告文件

[[email protected] tpcc-mysql]# ./tpcc_start  -h localhost -P 3306 -d tpcc -u root -p "" -w 100 -c 100 -r 120 -l 360 -f 123.log >> tpcc-mysql.log 2>&1
[[email protected] tpcc-mysql]# cat tpcc-mysql.log 
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
option h with value ‘localhost‘
option P with value ‘3306‘
option d with value ‘tpcc‘
option u with value ‘root‘
option p with value ‘‘
option w with value ‘100‘
option c with value ‘100‘
option r with value ‘120‘
option l with value ‘360‘
option f with value ‘123.log‘
<Parameters>
     [server]: localhost
     [port]: 3306
     [DBname]: tpcc
       [user]: root
       [pass]: 
  [warehouse]: 100
[connection]: 100
     [rampup]: 120 (sec.)
    [measure]: 360 (sec.)

RAMP-UP TIME.(120 sec.)          --预热时间120S

MEASURING START.                  --每10S收集的信息
  10, 27(0):1.191|1.236, 27(0):0.341|0.433, 6(0):0.180|0.188, 2(0):1.567|1.570, 0(0):3.804|3.933
  20, 46(0):1.417|1.501, 26(0):0.348|0.357, 2(0):0.171|0.175, 5(0):1.417|1.477, 1(0):0.000|4.351
  30, 16(0):1.358|1.508, 19(0):0.398|0.681, 3(0):0.183|0.229, 2(0):1.310|1.429, 2(0):5.050|5.904
  40, 9(0):1.348|1.438, 18(0):0.322|0.334, 0(0):0.000|0.000, 2(0):1.228|1.284, 3(0):5.657|6.583
  50, 56(0):1.463|1.465, 27(0):0.310|0.393, 2(0):0.082|0.151, 5(0):1.451|1.555, 0(0):0.000|0.000
  60, 16(0):1.223|1.237, 25(0):0.324|0.352, 5(0):0.161|0.163, 2(0):1.253|1.432, 1(0):0.000|5.627
  70, 25(0):1.177|1.368, 31(0):0.324|0.348, 2(0):0.156|0.170, 1(0):0.000|1.342, 3(0):5.473|6.178
  80, 31(0):1.374|1.394, 15(0):0.275|0.284, 2(0):0.111|0.153, 3(0):1.345|1.431, 2(0):5.026|5.289
  90, 15(0):1.220|1.229, 34(0):0.291|0.310, 5(0):0.167|0.180, 1(0):0.000|1.396, 4(0):5.004|5.702
100, 21(0):1.372|1.410, 27(0):0.313|0.509, 1(0):0.000|0.107, 2(0):1.487|1.524, 3(0):5.687|5.866
110, 29(0):1.401|1.438, 18(0):0.367|0.422, 1(0):0.000|0.118, 5(0):1.411|1.437, 0(0):0.000|0.000
120, 44(0):1.354|1.444, 30(0):0.320|0.329, 1(0):0.000|0.170, 2(0):1.380|1.459, 2(0):5.083|5.109
130, 20(0):1.432|1.458, 15(0):0.299|0.318, 6(0):0.176|0.177, 3(0):1.483|1.517, 6(0):5.519|5.721
140, 3(0):0.848|0.957, 37(0):0.437|0.531, 0(0):0.000|0.000, 0(0):0.000|0.000, 0(0):0.000|0.000
150, 21(0):1.337|1.394, 13(0):0.291|0.326, 3(0):0.149|0.158, 4(0):1.492|1.493, 3(0):5.839|6.008
160, 47(0):1.419|1.427, 39(0):0.355|0.378, 1(0):0.000|0.157, 3(0):1.381|1.453, 4(0):5.484|5.749
170, 4(0):1.214|1.393, 15(0):0.287|0.305, 6(0):0.186|0.210, 1(0):0.000|1.306, 4(0):5.174|5.803
180, 40(0):1.304|1.399, 21(0):0.343|0.369, 1(0):0.000|0.133, 3(0):1.325|1.438, 2(0):3.857|4.854
190, 28(0):1.366|1.755, 36(0):0.358|0.367, 0(0):0.000|0.000, 5(0):1.388|1.412, 1(0):0.000|5.540
200, 30(0):1.393|1.711, 26(0):0.311|0.328, 6(0):0.173|0.199, 1(0):0.000|1.414, 3(0):5.008|5.151
210, 19(0):1.213|1.376, 30(0):0.387|0.389, 1(0):0.000|0.106, 0(0):0.000|0.000, 5(0):4.882|5.416
220, 45(0):1.420|1.563, 27(0):0.329|0.368, 4(0):0.164|0.167, 1(0):0.000|1.420, 1(0):0.000|2.990
230, 32(0):1.513|1.654, 19(0):0.330|0.339, 1(0):0.000|0.157, 4(0):1.399|1.427, 5(0):5.612|5.668
240, 42(0):1.344|1.556, 42(0):0.328|0.428, 6(0):0.175|0.179, 2(0):1.417|1.454, 2(0):3.330|5.057
250, 15(0):1.476|1.486, 25(0):0.324|0.345, 3(0):0.175|0.186, 5(0):1.427|1.511, 4(0):5.543|5.985
260, 14(0):1.331|1.346, 30(0):0.360|0.364, 0(0):0.000|0.000, 2(0):1.375|1.599, 1(0):0.000|5.458
270, 19(0):1.302|1.371, 24(0):0.299|0.331, 5(0):0.170|0.186, 6(0):1.563|1.570, 2(0):5.232|5.413
280, 25(0):1.413|1.532, 19(0):0.268|0.276, 3(0):0.108|0.118, 1(0):0.000|1.393, 6(0):5.310|5.910
290, 69(0):1.511|1.522, 30(0):0.369|0.407, 0(0):0.000|0.000, 2(0):1.313|1.314, 5(0):5.994|6.222
300, 12(0):0.896|1.564, 33(0):0.359|0.383, 4(0):0.172|0.184, 3(0):1.406|1.561, 1(0):0.000|5.595
310, 49(0):1.521|1.921, 39(0):0.390|0.443, 3(0):0.132|0.168, 6(0):1.592|1.648, 3(0):5.782|5.803
320, 22(0):1.630|1.695, 39(0):0.326|0.414, 0(0):0.000|0.000, 0(0):0.000|0.000, 2(0):5.164|6.518
330, 7(0):1.399|1.561, 12(0):0.291|0.328, 7(0):0.161|0.186, 0(0):0.000|0.000, 1(0):0.000|4.457
340, 54(0):1.430|1.526, 32(0):0.336|0.355, 0(0):0.000|0.000, 2(0):1.403|1.482, 3(0):6.415|6.459
350, 4(0):0.637|0.652, 16(0):0.372|0.776, 5(0):0.168|0.171, 5(0):1.427|1.478, 1(0):0.000|3.920
360, 37(0):1.392|1.422, 30(0):0.383|0.449, 2(0):0.139|0.172, 5(0):1.599|1.612, 0(0):0.000|0.000

STOPPING THREADS....................................................................................................

<Raw Results>
  [0] sc:993  lt:0  rt:0  fl:0 
  [1] sc:946  lt:0  rt:0  fl:0 
  [2] sc:97  lt:0  rt:0  fl:0 
  [3] sc:96  lt:0  rt:0  fl:0 
  [4] sc:86  lt:0  rt:0  fl:0 
in 360 sec.

<Raw Results2(sum ver.)>
  [0] sc:993  lt:0  rt:0  fl:0     --新订单业务成功(success简写sc)次数,延迟(late简写lt)次数,重试(retry简写rt)次数,失败(failure简写fl)次数

[1] sc:953  lt:0  rt:0  fl:0     --支付业务统计

[2] sc:97  lt:0  rt:0  fl:0      --订单状态业务统计
  [3] sc:96  lt:0  rt:0  fl:0      --发货业务统计
  [4] sc:86  lt:0  rt:0  fl:0      --库存业务统计

<Constraint Check> (all must be [OK])         --以下必须全部是OK状态
[transaction percentage]
        Payment: 42.65% (>=43.0%) [NG] *      --支付成功率次数
   Order-Status: 4.37% (>= 4.0%) [OK]         --订单状态
       Delivery: 4.33% (>= 4.0%) [OK]         --发贷
    Stock-Level: 3.88% (>= 4.0%) [NG] *       --库存
[response time (at least 90% passed)]        --响应时间必须超过90%才行
      New-Order: 100.00%  [OK]

Payment: 100.00%  [OK]

Delivery: 100.00%  [OK]        
    Stock-Level: 100.00%  [OK]

<TpmC>
                 165.500 TpmC     --最终结果,每分钟事物数
[[email protected] tpcc-mysql]#

5.sql脚本说明
[[email protected] tpcc-mysql]# ll *.sql
-rw-r--r--. 1 root root 1621 Apr 23 11:24 add_fkey_idx.sql    --给创建添加外键和索引
-rw-r--r--. 1 root root  317 Apr 23 11:24 count.sql           --统计各表中有多少行数据
-rw-r--r--. 1 root root 3105 Apr 23 11:24 create_table.sql    --创建测试表
-rw-r--r--. 1 root root  763 Apr 23 11:24 drop_cons.sql       --删除外键约束
[[email protected] tpcc-mysql]#

6.shell脚本说明
[[email protected] tpcc-mysql]# cd scripts/
[[email protected] scripts]# ll *.sh
-rw-r--r--. 1 root root 2044 Apr 23 11:24 anal.full.sh
-rw-r--r--. 1 root root  114 Apr 23 11:24 analyze_checkpoint.sh
-rw-r--r--. 1 root root  162 Apr 23 11:24 analyze_checkpoint_xtradb1.sh
-rw-r--r--. 1 root root   85 Apr 23 11:24 analyze_checkpoint_xtradb.sh
-rw-r--r--. 1 root root  297 Apr 23 11:24 analyze_dirty.sh
-rw-r--r--. 1 root root  155 Apr 23 11:24 analyze_evicted.sh
-rw-r--r--. 1 root root   97 Apr 23 11:24 analyze_flushed_innodb.sh
-rw-r--r--. 1 root root  154 Apr 23 11:24 analyze_flushed.sh
-rw-r--r--. 1 root root  258 Apr 23 11:24 analyze_min.sh
-rw-r--r--. 1 root root  103 Apr 23 11:24 analyze_modified.sh
-rw-r--r--. 1 root root  452 Apr 23 11:24 analyzeR.sh
-rw-r--r--. 1 root root  363 Apr 23 11:24 analyze.sh
-rwxr-xr-x. 1 root root  101 Apr 23 11:24 flashcache_stat.sh
-rwxr-xr-x. 1 root root  116 Apr 23 11:24 innodb_stat.sh
-rw-r--r--. 1 root root 1766 Apr 23 11:24 run_no_backup.sh
-rw-r--r--. 1 root root 1363 Apr 23 11:24 run.sh
-rw-r--r--. 1 root root 2876 Apr 23 11:24 runX.sh
-rwxr-xr-x. 1 root root  167 Apr 23 11:24 virident_stat.sh

时间: 2024-10-19 19:31:38

mysql性能测试工具之tpcc-mysql的相关文章

mysql数据库管理工具navicat for mysql怎么用

mysql数据库管理工具navicat for mysql,对于不怎么喜欢图形界面或者不太方便使用SQL的时候.我们可以通过用这个图形界面数据库管理工具来管理mysql,本经验咗嚛就简单介绍一下怎么用navicat for mysql管理连接mysql数据库 1.Navicat for  mysql 怎么用? 连接数据库 打开navicat for mysql之后找到,文件----新建连接 2.连接参数填写 在出现的连接设置里面,有很多选项都是针对需要连接的数据库的账号信息 连接名:可以任意填写

Mysql 性能测试工具 sysbench的安装和使用

工作上需要用到AWS和Azure的Mysql服务,需要测试比较一下两个云服务的性能.于是开始百度 + google,查找性能测试工具.最终决定用sysbench. sysbench介绍 sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试. 数据库目前支持MySQL/Oracle/PostgreSQL.本文只是简单演示一下几种测试的用法,后续准备利用sysbench来对MySQL进行一系列的测试.具体的一些参数设置,需要根据不同的测试要求来进行

MySQL性能测试工具sysbench的安装和使用

sysbench是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据库的性能测试.目前支持的数据库有MySQL.Oracle和PostgreSQL.当前功能允许测试的系统参数有: file I/O performance (文件I / O性能) scheduler performance (调度性能) memory allocation and transfer speed (内存分配和传输速度) POSIX threads implementat

mysql性能测试工具之sysbench

sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数 下的数据库负载情况,主要测试以下几种: (1).cpu性能 (2).磁盘io性能 (3).调度程序性能 (4).内存分配及传输速度 (5).POSIX线程性能 (6).数据库性能(OLTP基准测试) 1.下载和安装sysbench工具 [[email protected] home]# wget http://down1.chinaunix.net/distfiles/sysbench-0.4.10.t

mysql 性能测试工具 mysqlslap

原文链接: https://my.oschina.net/moooofly/blog/152547 连接数据库: # mysqlslap -h localhost -uroot -p123456 --concurrency=50 模拟客户--iterations=200 执行多少次--number-int-cols=2 2个int 类型--number-char-cols=3 3个vachar类型--auto-generate-sql 自动生成sql--query=query.sql --que

mysql性能测试工具之mysqlslap

mysqlslap是mysql自带的基准测试工具,优点:查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较.msqlslap为mysql性能优化前后提供了直观的验证依据,建议系统运维和DBA人员应该掌握一些常见的压力测试工具,才能准确的掌握线上数据库支撑的用户流量上限及其抗压性等问题. 工具详细参数 --help      显示帮助 --concurrency      代表并发数量,多个可以用逗号隔开 --e

MySQL性能测试工具之mysqlslap使用详解

mysqlslap是mysql自带的基准测试工具,优点:查询数据,语法简单,灵活容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较.msqlslap为mysql性能优化前后提供了直观的验证依据,建议系统运维和DBA人员应该掌握一些常见的压力测试工具,才能准确的掌握线上数据库支撑的用户流量上限及其抗压性等问题. 常用的选项--concurrency 并发数量,多个可以用逗号隔开--engines 要测试的引擎,可以有多个,用分隔符隔开,

MySQL性能测试工具 mysqlslap

1.使用自动生成脚本测试数据库性能 mysqlslap -uroot -p123 -a --debug-info --concurrency=50,100  --number-of-queries=200 --engine=myisam,innodb 参数介绍 -u : 用户名 -p : 密码 -a (--auto-generate-sql) : 自动生成sql脚本测试数据库 --debug-info : 输出debug信息,包括内存,CPU等 --concurrency : 用户并发数,可填写

mysql数据库管理工具(navicat for mysql)

Navicat Premium 是一个可多重连接的数据库管理工具,它可让你以单一程序同时连接到 MySQL.Oracle.PostgreSQL.SQLite 及 SQL Server 数据库,让管理不同类型的数据库更加方便.Navicat Premium 结合了其他 Navicat 成员的功能.有了不同数据库类型的连接能力,Navicat Premium 支持在 MySQL.Oracle.PostgreSQL.SQLite 及 SQL Server 之间传输数据.它支持大部份 MySQL.Ora