目的:测试oltp场景的压力测试。 数据集选择: 1)TPC-A、TPC-B A / B 两个版本模拟的是银行转账业务,相对业务模型比较简单 2)TPC-C 用商品批发业务混合了只读和读写等复杂事务来模拟OLTP场景。 开源工具调研:mysql-tpcc(mysql-tpcc只能用在MySQL或者兼容MySQL的数据库) 安装
git clone https://github.com/Percona-Lab/tpcc-mysql cd tpcc-mysql/src make报错如下: [xx@sandbox-test src]$ make cc -w -O3 -g -I. `mysql_config --include` -c load.c load.c:19:19: fatal error: mysql.h: No such file or directory #include <mysql.h> ^ compilation terminated. make: *** [load.o] Error 1 解决: yum install mysql-devel 重新make,success
create database tpcc; mysql -uroot -p****** -D tpcc < create_table.sql(******表示密码) mysql -uroot -p****** -D tpcc < add_fkey_idx.sql mysql -uroot -p****** -e "show tables from tpcc" ./tpcc_load -h 127.0.0.1 -u root -P 3306 -d tpcc -w 1
./tpcc_start -h server_host -d tpcc -u mysql_user -p mysql_password -w 20 -c 128 -r 120 -l 200 - >tpcc-output-log
参数 | 说明 |
-w | 指定仓库数量。 |
-c | 指定并发连接数。 |
-r | 指定开始测试前进行 warmup 的时间,进行预热后,测试效果更好。 |
-l | 指定测试持续时间。 |
-i | 指定生成报告间隔时长。 |
-f | 指定生成的报告文件名。 |