加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL 基准测试工具tpcc-mysql使用手册及报告解析

发布时间:2022-04-02 03:23:20 所属栏目:MySql教程 来源:互联网
导读:〇 下载安装 make如果成功后,会在tpcc-mysql目录下生成tpcc_load与tpcc_start两个工具。 make如果报错,一般原因是缺少mysql_config环境,报错形如: /bin/sh: mysql_config: command not found load.c:19:19: error: mysql.h: No such file or directory
      〇 下载安装
 
      make如果成功后,会在tpcc-mysql目录下生成tpcc_load与tpcc_start两个工具。
 
      make如果报错,一般原因是缺少mysql_config环境,报错形如:
 
       /bin/sh: mysql_config: command not found
       load.c:19:19: error: mysql.h: No such file or directory
………………
      ‘MYSQL_TYPE_LONG’ undeclared
      ‘MYSQL_TYPE_STRING’ undeclared
………………
并还有一些ERROR
 
原因是环境变量设置有误,或缺少mysql_config环境。
比如此处,设置一下环境变量:
export PATH=$PATH:/data/mysql57/bin/
 
〇 使用
 
① 在待测试的实例中创建一个db,名为tpcc:CREATE DATABASE tpcc;
 
② 导入一个tpcc-mysql目录下的表结构:mysql -u$user -p$password -h$host < ./tpcc-mysql/create_table.sql
 
③ load数据:
./tpcc-mysql/tpcc_load -h$host -d tpcc -u$user -p$password -w 1000 > tpcc.load &
当然这样load很慢,工具配套有一个简单的并行load数据的脚本,load.sh:
使用起来也是十分简单的:
 
并行导入是基于四个部分进行的,分别为:
[part]: 1=ITEMS 2=WAREHOUSE 3=CUSTOMER 4=ORDERS
通过./tpcc_load --help,结合load.sh就可以理解。
 
④ 导入数据结束后,最后加一个index和fk:mysql -u -p < ./tpcc-mysql/add_fkey_idx.sql
 
⑤ 测试
./tpcc_start -h$host -u$user -p$password -d tpcc -w 1000 -c32 -r300 -l7200 > /data/tpcc.report 2>&1 &
 
〇 报告分析
 
     [server]: …………
       [port]: 3306
     [DBname]: tpcc
       [user]: root
       [pass]: *******
  [warehouse]: 1000
 [connection]: 32
     [rampup]: 300 (sec.)
    [measure]: 7200 (sec.)
 
RAMP-UP TIME.(300 sec.)
 
MEASURING START.
 
  10, trx: 1670, 95%: 120.954, 99%: 143.328, max_rt: 291.917, 1675|207.554, 168|164.157, 167|745.408, 168|875.570
  20, trx: 1656, 95%: 128.301, 99%: 150.585, max_rt: 229.172, 1650|102.471, 165|121.764, 165|569.108, 163|737.483
  30, trx: 1679, 95%: 129.072, 99%: 151.535, max_rt: 197.850, 1682|103.436, 168|80.130, 168|658.822, 170|686.441
  40, trx: 1662, 95%: 126.926, 99%: 147.551, max_rt: 182.245, 1656|122.172, 167|97.329, 167|567.806, 164|717.234
  50, trx: 1650, 95%: 130.041, 99%: 151.807, max_rt: 201.568, 1657|124.149, 164|145.663, 164|660.545, 167|683.961
  60, trx: 1659, 95%: 127.841, 99%: 148.926, max_rt: 189.087, 1653|107.867, 166|90.284, 165|535.922, 168|690.396
  ……………………………………………………………………………………………………
 
  [0] sc:5 lt:1169114  rt:0  fl:0 avg_rt: 88.2 (5)
  [1] sc:15 lt:1168760  rt:0  fl:0 avg_rt: 35.1 (5)
  [2] sc:1597 lt:115317  rt:0  fl:0 avg_rt: 24.3 (5)
  [3] sc:0 lt:116913  rt:0  fl:0 avg_rt: 318.2 (80)
  [4] sc:0 lt:116914  rt:0  fl:0 avg_rt: 477.7 (20)
 in 7200 sec.
 
-- 0代表新订单,1代表支付订单,2代表订单状态业务,3代表发货,4代表库存
-- sc:success成功,lt:late延迟,rt:retry重试,fl:failure失败,avg_rt:平均响应时间
-- 可以看出此次测试的mysql server几乎完全无法满足虚拟的tpcc业务。

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读