tpcc mysql 基准测试_TPCC-MySQL基准测试

1.简述

TPCC-MySQL输出结果包括五个业务逻辑,这五个业务逻辑构成了TPCC-MySQL测试的整个事务处理过程。具体如下所示:

New-Order:新订单

Payment:支付

Order-Status:订单查询

Delivery:发货

Stock-Level:库存

预定义变量:为了能够清晰的说明以下内容,首先定义一些变量,便于以下的计算和说明。具体如下所示:

success         =执行成功的记录数

late           =执行延迟的记录数

pre_success      =上一次执行成功的记录数

pre_late      =上一次执行失败的记录数

late定义: 根据不同的业务,late的定义也不同,五种业务逻辑分别对操作延迟定义的界限值如下所示:

New-Order 5ms

Payment 5ms

Order-Status 5ms

Delivery 80ms

Stock-Level 20ms

计算:

根据以上定义的变量,计算相应字段的结果和说明相应字段的含义。

时间间隔内成功的事务(包括成功和延迟的事务):sl=success+late-pre_success-pre_late

时间间隔内延迟的事务:l=late-pre_late

时间间隔内前90%记录(实际为99%)的平均响应时间:rt90

时间间隔内最大的响应时间:max_rt

2.编译tpcc-mysql

yum -y install bzr

bzr branchlp:~percona-dev/perconatools/tpcc-mysql

cd tpcc-mysql/src

make

cd ..

编译完成后回到上级目录,可以看到tpcc_load 、tpcc_start命令。

total 264

-rw-r--r-- 1 root root   1621 Dec 1 02:00 add_fkey_idx.sql

-rw-r--r-- 1 root root    317 Dec 1 02:00 count.sql

-rw-r--r-- 1 root root   3105 Dec 1 02:00 create_table.sql

-rw-r--r-- 1 root root    763 Dec 1 02:00 drop_cons.sql

-rw-r--r-- 1 root root    477 Dec 1 02:00 load.sh

-rw-r--r-- 1 root root    851 Dec 1 02:00 README

drwxr-xr-x 2 root root   4096 Dec 1 02:00 schema2

drwxr-xr-x 5 root root   4096 Dec 1 02:00 scripts

drwxr-xr-x 2 root root   4096 Dec 1 02:01 src

-rwxr-xr-x 1 root root  64463 Dec 1 02:01 tpcc_load

-rwxr-xr-x 1 root root 165950 Dec  1 02:01 tpcc_start

3.创建测试库表并导入数据

create database thunder;

mysql thunder < create_table.sql

mysql thunder < add_fkey_idx.sql    #这步也可以导入数据之后做,但时间较长

[[email protected] tpcc-mysql]# ./tpcc_load -h

*************************************

*** ###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

./tpcc_load 127.0.0.1:3306 thunder thunderthunder 100

导入数据,一个warehouse大概70M左右,可以根据需要创建数据的大小

4.开始测试

[[email protected] tpcc-mysql]# ./tpcc_start -h

***************************************

*** ###easy### TPC-C Load Generator ***

***************************************

./tpcc_start: option requires an argument-- ‘h‘

Usage: tpcc_start -h server_host -P port -ddatabase_name -u mysql_user -p mysql_password -w warehouses -c connections -rwarmup_time -l running_time -i report_interval -f report_file -t trx_file

-w 指定多少个warehouse,也就是数据大小

-c 指定多少个连接来测试

-r 预热时间,有些数据将写到buffer_pool里面

-l 运行时间

./tpcc_start -h 127.0.0.1 -P 3307 -dthunder -u thunder -p thunder -w 100 -c 100 -r 60 -l 60 -i 10 -i report.txt -ttrx.txt

原文:http://thundermeng.blog.51cto.com/9414441/1718326

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL-tpcc是一个用于测试MySQL数据库性能的工具,可以模拟多个用户执行不同的事务负载。以下是配置MySQL-tpcc自动化测试的步骤: 1. 下载和安装MySQL-tpcc工具 MySQL-tpcc可以从GitHub上克隆,使用如下命令: ``` git clone https://github.com/Percona-Lab/tpcc-mysql.git ``` 在克隆完成后,可以进入到tpcc-mysql目录中,使用make命令编译。 2. 准备测试数据 使用tpcc_load工具,生成测试数据。tpcc_load可以使用如下命令: ``` ./tpcc_load -h host -P port -d dbname -u username -p password -w warehouse_count ``` 其中,host是MySQL服务器的主机名或IP地址,port是MySQL服务器的端口号,dbname是数据库名称,username是MySQL的用户名,password是MySQL的密码,warehouse_count是要生成的仓库数量。 3. 运行测试 使用tpcc_start工具,运行测试tpcc_start可以使用如下命令: ``` ./tpcc_start -h host -P port -d dbname -u username -p password -w warehouse_count -c connection_count -r rampup_time -l running_time -f result_file -s scale_factor ``` 其中,host、port、dbname、username、password、warehouse_count与tpcc_load相同。connection_count是并发连接数,rampup_time是预热时间,running_time是运行时间,result_file是测试结果保存的文件,scale_factor是测试规模因子。 4. 结果分析 测试运行完成后,可以分析结果。MySQL-tpcc工具提供了一些脚本,可以对结果进行分析和图形化展示。其中,analyze.sh脚本可以分析结果,report.py脚本可以生成图表。 例如,可以使用如下命令分析结果: ``` ./analyze.sh -f result_file -d dbname ``` 可以使用如下命令生成图表: ``` python report.py result_file ``` 以上就是配置MySQL-tpcc自动化测试的步骤。可以使用脚本和工具将测试自动化,以便更好地进行性能测试和分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值