tpcc-mysql 安装

tpcc-mysql 安装
1. 下载
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

2.客户端安装
yum -y install bzr

3.下载tpcc-mysql源码
bzr branch lp:~percona-dev/perconatools/tpcc-mysql
成功-->
You have not informed bzr of your Launchpad ID, and you must do this to
write to Launchpad or access private data.  See "bzr help launchpad-login".
Branched 48 revision(s). 

4.安装tpcc-mysql
cd /opt/tpcc-mysql/src
[root@vm-mysql src]# 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

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

./tpcc_load --help 出现错误:
Error while loading shared libraries: libmysqlclient.so.16
解决方法:
vi /etc/ld.so.conf 添加
/usr/local/mysql-5.1.55/lib/mysql  #按照mysql具体安装目录
执行ldconfig #搞定

5.初始化数据库和加载数据 tpcc_load
mysql>create database tpcc300;
mysql>use tpcc300;
mysql>source /opt/tpcc-mysql/create_table.sql; #导入表结构
mysql>source /opt/tpcc-mysql/add_fkkey_idx.sql; #创建表索引和外键等
[root@vm-mysql tpcc-mysql]# ./tpcc_load 
*************************************
*** ###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


[warehouse]->表示创建几个数据库(数量)

列子:创建一个数据仓库且填充表数据
[root@vm-mysql tpcc-mysql]# ./tpcc_load 192.168.0.99 tpcc300 root 123456 1

6.开始测试 tpcc_start
[root@vm-mysql 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:数据库ip
-P:数据库监听端口
-d:测试数据名
-u:数据库用户名
-p:数据库登陆密码
-w:指定仓库数量,也就是要测试几个数据仓库,比如测试干干创建的100个数据仓库
-c:指定并发连接数
-r: 指定开始测试前进行warmup的时间,进行预热后,测试效果更好,更准确
-l:指定测试持续时间
-i:指定生成报告间隔时长
-f:指定生成的报告文件名

对1个数据仓库,预热120秒,32个并发连接,运行3600秒,结果存放在当前文件tpcc300_20140924
./tpcc_start -h 192.168.0.99 -P3306 -d tpcc300 -u root -p '123456' -w 1 -c 32 -r 120 -l 120 -f tpcc300_20140924_log > tpcc300_pic_data.txt 

生成图表:
写个脚本获取数据源:
[root@vm-mysql tpcc-mysql]# cat tpcc-output-analyze.sh 
#!/bin/sh
TIMESLOT=1
if [ -n "$2" ]
then
TIMESLOT=$2
fi
cat $1 | grep -v HY000 | grep -v payment | grep -v neword | awk -v timeslot=$TIMESLOT 'BEGIN { FS="[,():]"; s=0; cntr=0; aggr=0 } /MEASURING START/ { s=1} /STOPPING THREADS/ {s=0} /0/ { if (s==1) { cntr++; aggr+=$2; } if ( cntr==timeslot ) { printf ("%d %3d\n",$1,(aggr/timeslot)) ; cntr=0; aggr=0 } }'

复制在执行过程中(不在这个中的tpcc300_20140924),生成的数据到,tpcc_out_log.txt
./tpcc-output-analyze.sh  tpcc_out_log.txt > tpcc_pic_data.txt 使用gnuplot绘图

gnuplot安装及使用
http://blog.youkuaiyun.com/zokie/article/details/5429135

TPCC-MySQL
http://blog.itpub.net/29254281/viewspace-1195589/

关于Gnuplot画图工具的简单使用
http://www.heboliang.cn/archive/timedata_gnuplot.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值