tpcc-mysql安装及测试

安装


1.下载tpcc-mysql

官方:https://code.launchpad.net/~percona-dev/perconatools/tpcc-mysql

官方github:https://github.com/Percona-Lab/tpcc-mysql

2.编译源码

cd /tpcc-mysql/src
make

3.创建数据库和表

mysql -uUserName -pPassword -e 'create database tpcctest'
mysql -uUserName -pPassword -D tpcctest < ./create_table.sql #创建表
mysql -uUserName -pPassword -D tpcctest < add_fkey_idx.sql   #创建FK和索引

4.加载数据(./tpcc_load命令)

命令格式说明:

$ ./tpcc --help
*************************************
*** TPCC-mysql Data Loader        ***
*************************************
./tpcc_load: invalid option -- '-'
Usage: tpcc_load 
-h server_host  
-P port 
-d database_name 
-u mysql_user 
-p mysql_password 
-w warehouses      #即数据库大小,10大概是900MB左右
-l part 
-m min_wh 
-n max_wh
* [part]: 1=ITEMS 2=WAREHOUSE 3=CUSTOMER 4=ORDERS

加载命令:

/tpcc_load -h 127.0.0.1 -P 3306 -d tpcctest -u userName -p passWord -w 10

测试


命令格式说明:

$ ./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        

测试命令:

./tpcc_start -h 127.0.0.1 -P 3306 -d tpcctest -u userName -p passWord \
 -w 10 -c 32 -r 10 -l 10 \
 -f tpcc_mysql_20190416.log >> tpcc_run_result_20190416.log 2>&1

## 后面 >> tpcc_run_result_20190416.log 2>&1
## 主要是将命令控制台输出和错误输出重定向至 tpcc_run_result_20190416.log 方便查看

结果说明(tpcc_run_result_20190416.log):

***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
option h with value '127.0.0.1'
option P with value '3306'
option d with value 'tpcctest'
option u with value 'root'
option p with value 'szw666'
option w with value '10'
option c with value '32'
option r with value '10'
option l with value '10'
option f with value 'tpcc_mysql_20140921.log'

     [server]: 127.0.0.1
     [port]: 3306
     [DBname]: tpcctest
       [user]: root
       [pass]: szw666
  [warehouse]: 10
 [connection]: 32
     [rampup]: 10 (sec.)
    [measure]: 10 (sec.)

RAMP-UP TIME.(10 sec.)

MEASURING START.

  10, trx: 189, 95%: 3638.024, 99%: 4833.223, max_rt: 4986.919, 198|4667.067, 20|980.516, 20|3770.746, 15|9859.134

STOPPING THREADS................................
#10 - 第一个10s
#trx: 189 - 给定间隔的New Order 的 transaction 数量
#95%: 3638.024 - 给定间隔95%的New Order transactions的reponse time
#max_rt: 4986.919 - 最大New Order transactions的reponse time
#剩余的都是别的transactions的trx和最大response time


  [0] sc:0 lt:189  rt:0  fl:0 avg_rt: 1450.8 (5)    #New Order 新订单业务
  [1] sc:43 lt:155  rt:0  fl:0 avg_rt: 1018.9 (5)   #Payment 支付业务
  [2] sc:6 lt:14  rt:0  fl:0 avg_rt: 243.2 (5)      #Order-Status 订单状态统计业务
  [3] sc:3 lt:17  rt:0  fl:0 avg_rt: 988.6 (80)     #Delivery 发货统计业务
  [4] sc:0 lt:15  rt:0  fl:0 avg_rt: 10501.1 (20)   #Stock-Level 库存统计业务
 in 10 sec.
# sc:成功数量 lt:延迟数量 fl:失败数量 avg_rt:平均response time


  [0] sc:0  lt:189  rt:0  fl:0 
  [1] sc:43  lt:155  rt:0  fl:0 
  [2] sc:6  lt:14  rt:0  fl:0 
  [3] sc:3  lt:17  rt:0  fl:0 
  [4] sc:0  lt:15  rt:0  fl:0 

 (all must be [OK])
 [transaction percentage]
        Payment: 44.80% (>=43.0%) [OK]
   Order-Status: 4.52% (>= 4.0%) [OK]
       Delivery: 4.52% (>= 4.0%) [OK]
    Stock-Level: 3.39% (>= 4.0%) [NG] *
 [response time (at least 90% passed)]
      New-Order: 0.00%  [NG] *
        Payment: 21.72%  [NG] *
   Order-Status: 30.00%  [NG] *
       Delivery: 15.00%  [NG] *
    Stock-Level: 0.00%  [NG] *
# 和标准比较 [OK] 合格 [NG] 不合格


                 1134.000 TpmC
#每分钟事务数

参考:tpcc-mysql安装、使用、结果解读

 

你可能感兴趣的:(tpcc-msyql)