mysql-tpcc
目的:测试oltp场景的压力测试。
数据模型选择
1)TPC-A、TPC-B:A / B 两个版本模拟的是银行转账业务,相对业务模型比较简单
2)TPC-C:用商品批发业务混合了只读和读写等复杂事务来模拟OLTP场景。
一般都是用TPC-C这个升级之后的数据模型来测试OLTP。
用TPC-C测试模型的开源工具调研:mysql-tpcc(mysql-tpcc只能用在MySQL或者兼容MySQL的数据库)
安装
1 2 3 | git clone https: //github .com /Percona-Lab/tpcc-mysql cd tpcc-mysql /src make |
安装过程报错如下:
[xx@xx 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
命令试用
1 2 3 4 5 | 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<br>. /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
|
指定生成的报告文件名。
|
缺点
对于不是完全兼容mysql的产品,无法进行测试。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现