tpcc-mysql 性能测试

MySQL之性能测试工具深度解析:TPCC - MySQL与测试原则 大家好!一直以来,我都期望能和各位技术爱好者在学习的道路上携手共进,今天咱们就一同深入探索MySQL性能测试领域的关键知识。在数据库的世界里,性能优化是重中之重,而掌握合适的测试工具和方法是实现高效优化的关键。今天要给大家介绍的TPCC - MySQL测试工具,以及在MySQL基准测试中需要遵循的一些原则,希望能对大家有所帮助,让我们一起在技术上不断提升。 阅读详情

tpcc-mysql安装

Tpcc-mysql通过模拟一个电商的业务,主要包含的业务有新增订单,库存查询,发货,支付等模块的测试,用来测试典型的复杂OLTP系统的性能。Tpcc-mysql是percona基于tpcc衍生出来的产品,专用于mysql基准测试。

shell> cd /db/tool/tpcc-mysql/src/
shell> make
cc -w -O2 -g -I. `mysql_config --include`  -c load.c
cc -w -O2 -g -I. `mysql_config --include`  -c support.c
cc load.o support.o `mysql_config --libs_r` -lrt -o ../tpcc_load
cc -w -O2 -g -I. `mysql_config --include`  -c main.c
cc -w -O2 -g -I. `mysql_config --include`  -c spt_proc.c
cc -w -O2 -g -I. `mysql_config --include`  -c driver.c
cc -w -O2 -g -I. `mysql_config --include`  -c sequence.c
cc -w -O2 -g -I. `mysql_config --include`  -c rthist.c
cc -w -O2 -g -I. `mysql_config --include`  -c neword.c
cc -w -O2 -g -I. `mysql_config --include`  -c payment.c
cc -w -O2 -g -I. `mysql_config --include`  -c ordstat.c
cc -w -O2 -g -I. `mysql_config --include`  -c delivery.c
cc -w -O2 -g -I. `mysql_config --include`  -c slev.c
cc main.o spt_proc.o driver.o support.o sequence.o rthist.o neword.o payment.o ordstat.o delivery.o slev.o 
`mysql_config --libs_r` -lrt -o ../tpcc_start

shell> ln -s /db/tool/tpcc-mysql/tpcc_load /usr/local/bin/tpcc_load
shell> ln -s /db/tool/tpcc-mysql/tpcc_start /usr/local/bin/tpcc_start
然后就会在 /db/tool/tpcc-mysql 下生成 tpcc 命令行工具 tpcc_load 、 tpcc_start

make命令会在tpcc-mysql目录下生成 tpcc 命令行工具 tpcc_load ,tpcc_start
tpcc_load : 提供初始化数据的功能
tpcc_start: 进行压力测试

shell> 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

Server:    服务器名
DB:    数据库名
user: 用户名
pass: 密码
Warehouse: 仓库的数量

shell>  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 server_host: 服务器名
-P port : 端口号,默认为3306
-d database_name: 数据库名
-u mysql_user :    用户名
-p mysql_password :    密码
-w warehouses : 仓库的数量
-c connections :     线程数,默认为1
-r warmup_time :     热身时间,单位:s,默认为10s ,热身是为了将数据加载到内存。
-l running_time : 测试时间,单位:s,默认为20s
-i report_interval :     指定生成报告间隔时长
-f report_file :     测试结果输出文件

加载测试数据

shell> mysqladmin -u root -p create tpcc         ##创建数据库
shell> mysql -u root -p tpcc < create_table.sql  ##创建表
shell> mysql -u root -p tpcc < add_fkey_idx.sql  ##添加外键

shell> tpcc_load 127.0.0.1 tpcc root mypass 5   ##单进程加载
*************************************
*** ###easy### TPC-C Data Loader  ***
*************************************
<Parameters>
     [server]: 127.0.0.1
     [port]: 3306
     [DBname]: tpcc
       [user]: root
       [pass]: oracle
  [warehouse]: 5
TPCC Data Load Started...
.
.
.
Loading Orders for D=10, W= 5
.......... 1000
.......... 2000
.......... 3000
Orders Done.

...DATA LOADING COMPLETED SUCCESSFULLY.

shell> ./load.sh tpcc 5   ##单进程加载


对5个数据仓库,预热10秒,100个并发连接,运行60秒
shell> tpcc_start -h 127.0.0.1 -d tpcc -u root -p mypass -w 5 -c 100 -r 10 -l 60  -i 10 -f report20141224 -t tr
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
option h with value '127.0.0.1'
option d with value 'tpcc'
option u with value 'root'
option p with value 'mypass'
option w with value '5'
option c with value '100'
option r with value '10'
option l with value '60'
option i with value '10'
option f with value 'report20141224'
option t with value 'tr'
<Parameters>
     [server]: 127.0.0.1
     [port]: 3306
     [DBname]: tcpp
       [user]: root
       [pass]: oracle
  [warehouse]: 5
 [connection]: 100
     [rampup]: 10 (sec.)
    [measure]: 60 (sec.)

RAMP-UP TIME.(10 sec.)

-- 预热结束,开始进行压测
MEASURING START.

-- Count   New-Order            Payment         Order-Status        Delivery            Stock-Level
-- #,  sl(l):rt90|max_rt , sl(l):rt90|max_rt ,  sl(l):rt90|max_rt, sl(l):rt90|max_rt,  sl(l):rt90|max_rt

  10, 462(3):4.372|8.759, 455(0):0.901|2.598, 44(0):0.515|0.638, 45(0):4.798|5.277, 46(0):11.478|12.548
  20, 443(2):3.373|10.121, 433(0):0.784|1.917, 45(0):0.684|4.988, 46(0):3.931|6.257, 49(2):19.999|28.975
  30, 441(2):3.362|14.565, 466(1):0.899|12.739, 45(0):0.459|0.468, 44(0):4.697|5.110, 44(0):15.978|17.884
  40, 407(6):5.016|13.801, 392(0):0.765|1.341, 40(0):0.708|1.930, 41(0):4.085|4.382, 37(0):10.870|11.099
  50, 419(0):3.207|3.905, 427(0):1.204|1.936, 43(0):0.428|0.570, 42(0):4.790|5.411, 46(0):11.452|11.507
  60, 436(4):4.247|22.267, 429(0):0.944|1.864, 43(0):0.397|0.597, 45(0):4.182|4.889, 39(0):11.628|11.851

-- 压测结束
STOPPING 
THREADS....................................................................................................

-- 第一次结果统计
<Raw Results>
  [0] sc:2591  lt:17  rt:0  fl:0 -- New-Order,新订单业务成功(sc)次数,延迟(lt)次数,重试(rt)次数,失败(fl)次数
  [1] sc:2601  lt:1  rt:0  fl:0  -- Payment,支付业务统计
  [2] sc:260  lt:0  rt:0  fl:0   -- Order-Status,订单状态业务统计,其他同上
  [3] sc:263  lt:0  rt:0  fl:0   -- Delivery,发货业务统计,其他同上
  [4] sc:259  lt:2  rt:0  fl:0   -- Stock-Level,库存业务统计,其他同上
 in 60 sec.

-- 第二次统计结果,其他同上
<Raw Results2(sum ver.)>
  [0] sc:2591  lt:17  rt:0  fl:0 
  [1] sc:2601  lt:1  rt:0  fl:0 
  [2] sc:260  lt:0  rt:0  fl:0 
  [3] sc:263  lt:0  rt:0  fl:0 
  [4] sc:259  lt:2  rt:0  fl:0 

<Constraint Check> (all must be [OK])  -- 下面所有业务逻辑结果都必须为 OK 才行
 [transaction percentage]
        Payment: 43.41% (>=43.0%) [OK] -- 支付成功次数(sc + lt)必须大于43.0%,否则结果为NG,而不是OK
   Order-Status: 4.34% (>= 4.0%) [OK]
       Delivery: 4.39% (>= 4.0%) [OK]
    Stock-Level: 4.35% (>= 4.0%) [OK]
 [response time (at least 90% passed)]   -- 响应耗时指标必须超过90%通过才行
      New-Order: 99.35%  [OK]       #新订单     late:>=5ms
        Payment: 99.96%  [OK]       #支付       late:>=5ms
   Order-Status: 100.00%  [OK]      #订单查询   late:>=5ms
       Delivery: 100.00%  [OK]      #发货       late:>=80ms
    Stock-Level: 99.23%  [OK]       #库存       late:>=20ms

<TpmC>
                 2608.000 TpmC   #TpmC结果值(每分钟事务数,该值是第一次统计结果中的新订单事务数除以总耗时分钟数
,例如本例中是:2608/1 = 2608.000)

预定义变量:
为了能够清晰的说明以下内容,首先定义一些变量,便于以下的计算和说明。具体如下所示:
success : 执行成功的记录数
late : 执行延迟的记录数
pre_success : 上一次执行成功的记录数
pre_late : 上一次执行失败的记录数

根据以上定义的变量,计算相应字段的结果和说明相应字段的含义。
1、时间间隔内成功的事务(包括成功和延迟的事务):sl=success+late-pre_success-pre_late
2、时间间隔内延迟的事务:l=late-pre_late
3、时间间隔内前90%记录(实际为99%)的平均响应时间:rt90
4、时间间隔内最大的响应时间:max_rt

整理自网络

Svoid
2014-12-26

MySQL之深度探索性能测试工具:dbt2与TPCC - MySQL 大家好!一直以来,我都希望能和大家在技术的道路上共同成长,相互学习。今天,咱们就一起深入研究一下MySQL性能测试领域中两个重要的工具:dbt2和TPCC - MySQL。这两个工具对于优化MySQL性能、提升系统整体表现至关重要,掌握它们,能让我们在数据库开发和管理工作中更加得心应手。 阅读详情

相关推荐

TPCC-MySQL性能基准测试

在进行大规模数据库应用的性能评估和比较时,TPCC(Transaction Processing Performance Council)基准测试是一个常用的标准。通过执行TPCC-MySQL基准测试,可以对MySQL数据库在处理大规模事务负载时的性能进行评估和优化。通过调整系统配置和参数,可以提高数据库的性能和可扩展性,以满足实际应用的需求。在执行基准测试之前,需要根据测试环境的需求进行相应的配置。此外,还可以对数据库的配置进行调整,如调整缓冲区大小、并发连接数等,以改善系统的性能。

CsmbPascal的博客 319

linux操作系统基础(含C编译,make编译)

Linux终端快捷键。

weixin_46287157的博客 1712

《MySQL DBA: 性能测试_Tpcc》

由Percona公司开发的tpcc测试工具。

yexiangCSDN的专栏 1130

第九章:执行make

第九章:执行make 一般描述整个工程编译规则的Makefile可以通过不止一种方式来执行。最简单直接的方法就是使用不带任何参数的“make”命令来重新编译所有过时的文件。通常我们的Makefile就书写为这种方式。 在某些情况下: 1.        可能需要使用m

wyfwx的专栏 975

基于tpcc-mysql的MySQL数据库TPC-C性能测试

🐬下载地址:https://github.com/Percona-Lab/tpcc-mysql。TPC-C测试中重点关注新订单(New Order)类型事务。,这与我们之前使用过的BenchMarkSQL工具一致。测试部分每10秒输出一份统计结果,间隔时间由。编译成功后生成了两个文件。加载测试数据使用的工具是。如果要并行加载,需要用到。,即每个仓库初始大小约为。

Sebastien23的博客 1465

用友YonSuite产品实操手把手教学(图文版)

用友YonSuite

ct341688的博客 8129

Makefile 编译问题解惑

#echo $MAKE=make -w ##提示进入或者离开哪个目录,有利于出错问题的定位 INCLUDE= ../ INCLUDE_MACRO= ../../Macro OBJ_PATH=./ OBJS1=$(OBJ_PATH)List.o OBJS2=$(OBJ_PATH)main.o OBJS3=$(OBJ_PATH)DataMacroDefine.o OUTPUT=List CC=gcc

citongke1的专栏 1259

车载面试题目(ADAS)

多数功能都是依靠的前置传感器(经过Lidar、Radar、Camera融合),比如ACC、AEB、LKA、NOA、TJA、FCW等,只有少数涉及周视传感器,比如BSD、CVW、DOW。③如果前面有车切速度小于自车车速,自车减速对减速度有要求,比如3.5m/m2,④如果前车静止了,自车有个跟停距离要求,比如2-3m。试验场有不同曲率的弯道,比如125m、250m、500m的,根据需求跟车行驶,看是否会减速,能不能驶出弯道等。迭代内容:底层通讯、网络管理、诊断、刷写、信息安全、OTA。

qq_43475097的博客 2284

数据库性能测试之tpcc-mysql压力测试

在上一篇博客中使用了sysbench基准测试,是对单张表进行的读写测试,由于不涉及表连接、外键约束、索引等操作,所以体现的是硬件性能,如果相要知道数据库集群在真实业务中的实际性能,那么需要压力测试。本篇博客讲解tpcc-mysql压力测试。 1. tpcc-mysql简介 tpcc-mysql是percona基于tpcc规范衍生出来的产品,专门用于mysql压力测试 。 tpcc是一种测试标准,明...

盲流子的博客 4520

FAGLB03余额显示异常排查与修复指南

本文针对SAP新总账中FAGLB03报表余额显示异常问题,提供了专业的排查与修复指南。文章深入剖析了数据不一致的核心原因,如FAGLFLEXT汇总表与凭证明细不同步、年度余额结转(FAGLGVTR)失败等,并详细介绍了使用FAGLF03进行精准诊断、通过SE38执行标准调整程序TFC_ADJUST_VZ进行修复的标准操作流程,帮助用户快速恢复数据一致性,确保财务报表的准确性。

weixin_29313423的博客 305

【Maxwell16.0】实战指南:从DXF导入到MotorCAD联合仿真的关键技巧

本文详细解析了Maxwell 16.0与MotorCAD进行联合仿真的核心流程与关键技巧。重点阐述了从DXF模型导入、几何修复、一极一槽模型剪裁,到坐标系对齐、MotorCAD参数匹配及结果验证的全过程,旨在帮助工程师高效打通联合仿真链路,规避常见错误,提升电机设计效率。

weixin_29062865的博客 704

TPCC-MySQL性能测试实战:从环境搭建到结果分析

本文详细介绍了TPCC-MySQL性能测试工具的使用方法,从环境搭建到结果分析的全过程。TPCC-MySQL基于TPC-C基准测试规范,能有效评估MySQL数据库在高并发事务处理场景下的性能表现。文章包含硬件配置建议、软件安装、测试数据加载、压力测试执行以及结果解读等实用内容,帮助开发者准确评估数据库性能并优化配置。

sony5的博客 721

Qwen3.6-27B 本地部署踩坑实录:两块 4090 折腾一天的真实记录

《Qwen3.6-27B稠密模型部署实战》摘要:本文记录了在双4090(48GB)环境下部署Qwen3.6-27B-FP8量化模型的全过程。重点解决vLLM服务启动时transformers版本不兼容问题,推荐通过构建自定义Docker镜像升级依赖。详细讲解了关键参数配置,包括128K上下文长度保持、MTP推测解码加速等技术细节,并给出显存优化建议。实测表明该稠密模型在27B参数量级下编程能力超越上一代397B MoE模型,单卡即可流畅运行FP8版本,输出速度达90token/s,是开发者理想的编程助手。文

Fzuim的博客 2748

tpcc-mysql_使用tpcc-mysql对mysql进行TPCC性能测试

tpcc-mysq是满足TPCC规范的性能测试工具,具体步骤如下:1、下载从https://github.com/Percona-Lab/tpcc-mysql下载安装包。2、安装[root@D2-LZY245 ~]# unzip tpcc-mysql-master.zip[root@D2-LZY245 ~]# cd tpcc-mysql-master/src/[root@D2-LZY245 src...

weixin_36382073的博客 367

NRF24L01模块的5个常见问题及解决方案:从信号干扰到功耗优化

本文深入探讨NRF24L01无线模块在STM32开发中的5大常见问题及解决方案,包括通信距离优化、数据丢失排查、电源噪声抑制、SPI通信故障处理以及低功耗设计。通过代码示例和电路图分析,提供实用的优化策略,帮助开发者提升无线通信的稳定性和效率。

weixin_28256233的博客 221

RK3568笔记五十四:SORT实时目标追踪

YOLOv5具备目标检测的功能,把视频分解成多幅图像并逐帧执行时,如果视频帧中有多个目标,如何知道一帧中的目标和上一帧是同一个对象就是目标跟踪的工作。DeepSort是实现目标跟踪的算法,从sort(simple online and realtime tracking)演变而来,使用卡尔曼滤波器预测所检测对象的运动轨迹,匈牙利算法将它们与新的检测目标相匹配。结合YOLOv5和DeepSORT可以在实时场景中实现高效的目标检测和跟踪。

780

mysql和tpcc_mysql性能测试-tpcc

Tpcc-mysqlTPC-C是专门针对联机交易处理系统(OLTP系统)的规范Tpcc-mysql由percona根据规范实现TPCC流程 更能模拟线上业务tpcc模拟业务场景1.下载tpcc-mysqlaiapple@ubuntu:~$ bzr branch lp:-percona-dev/perconatools/tpcc-mysqltpcc-mysql目录结构root@itcast01:/...

weixin_34366539的博客 233

【WRF数据准备】海温(SST)数据替换

【WRF数据准备】海温(SST)数据替换

WW、forever的博客 1115

tpcc_mysql性能测试

. bzr branch lp:~percona-dev/perconatools/tpcc-mysql 该方法需要下载bzr工具,还要在网站注册并添加SSH KEY,非常麻烦,并且还没有成功(卡在SSH KEY上)。 2. 直接在 http://bazaar.launchpad.net/~percona-dev/perconatools/tpcc-mysql...

weixin_33961829的博客 103

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

【Mysql性能测试之Tpcc-mysql】

TPC(Tracsaction Processing Performance Council) 事务处理性能协会是一个评价大型数据库系统软硬件性能的非盈利的组织,TPC-C是TPC协会制定的,用来测试典型的复杂OLTP系统的性能;Tpcc-MySQL是percona基于tpcc衍生出来的产品,专用于mysql基准测试,其源码放在bazaar上,因此需要先安装bazaar客户端。     T...

344

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

使用tpcc-mysql对mysql进行TPCC性能测试

tpcc-mysq是满足TPCC规范的性能测试工具,具体步骤如下: 1、下载 从https://github.com/Percona-Lab/tpcc-mysql下载安装包。 2、安装 [root@D2-LZY2...

cuishan5183的博客 244

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

mysql性能测试-tpcc

mysql性能测试-tpcc Tpcc-mysql TPC-C是专门针对联机交易处理系统(OLTP系统)的规范 Tpcc-mysql由percona根据规范实现 TPCC流程 更能模拟线上业务 tpcc模拟业务场景 1.下载tpcc-mysql aiapple@ubuntu:~$ bzr bran...

aiduo1030的博客 168

tpcc-mysql_mysql性能测试工具之tpcc-mysql

官网下载地址:http://imysql.com/wp-content/uploads/2014/09/tpcc-mysql-src.tgz1.用bzr客户端下载软件包[root@tong1 ~]# yum install bzr -y[root@tong1 ~]# bzr branch lp:~percona-dev/perconatools/tpcc-mysql[root@tong1 ~]# ...

weixin_32392989的博客 178

MySQL:TPCC性能测试

文章目录简介使用1、安装 简介 TPC-C是专门针对联机交易处理系统(OLTP系统)的规范。 tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。 github:https://github.com/Percona-Lab/tpcc-mysql 使用 1、安装 $ git clone https://github.com/Percona...

OceanStar的博客 838
上一篇: sysbench 0.5 性能测试工具
下一篇: MySQL监控工具之innotop
半瓶子酱油
博客等级 码龄16年 10粉丝 54原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值