上次说了loadrunner测试mysql并发性能可行性分析报告,对不熟悉loadrunner的同事而言颇麻烦,下面我们换用简单好用的方式,尽可能一个命令就搞定测试,就是传说中的mysqlslap,也不是很神秘它是mysql自带的工具。51Testing软件测试网 PCwMi9\
MySQLslap介绍
mysqlslap是从5.1.4版开始的一个MySQL官方提供的压力测试工具。通过模拟多个并发客户端访问MySQL来执行压力测试,同时详细的提供了“高负荷攻击MySQL”的数据性能报告。并且能很好的对比多个存储引擎在相同环境下的并发压力性能差别。通过mysqlslap–help可以获得可用的选项,这里列一些主要的参数,更详细的说明参考官方手册。51Testing软件测试网 T\6A$J c6iF
MySQLslap【option】
官方给出的MySQLslap参数介绍,全英文的其实不用怕我们能用到的参数不多,而且用过数据库的都认识几个关键的词,打比方:第一个参数--auto-generate-sql,中国式英语就可以猜到意思是“自动生成SQL”,再去简单看一下Description描述意思差不多了
;zl U?C~0介绍使用频率比较高的参数:
1r1zLo ^dR*i01.--auto-generate-sql:
pD$n'g&~6L:[ K0-a自动生成测试表和数据,表示用mysqlslap工具自己生成的SQL脚本来测试并发压力;51Testing软件测试网|1H(a5JbB^'gm
2.--engine 51Testing软件测试网C5b.TK3_
\2Vj
-e engine_name:代表要测试的引擎,可以有多个。例如:--engines=myisam,innodb;
S8oWO!R:v k'E+Y03.--iterations
3Gj1qxA,mb-P5Q[L0 -i N测试执行的迭代次数,代表要在不同并发环境下,各自运行测试多少次51Testing软件测试网"cs,U:c7p@(a
4.--query
R&u-w%s:\0V6h0-q使用自定义脚本执行测试,例如可以调用自定义的一个存储过程或者sql语句来执行测试
g\x|3^J.L05.--host数据库server地址51Testing软件测试网gQ%cS
Ov'[n9n
6.--port端口
"h{&n(r8i(y07.--user --password连接数据库的用户名,密码;51Testing软件测试网/A9f|PP$|*Z7s%~m#lnU
8.--concurrency51Testing软件测试网?cZ2@@*WL!Z
-c N表示并发量,也就是模拟多少个客户端同时执行select。可指定多个值,以逗号或者--delimiter参数指定的值做为分隔符51Testing软件测试网GK ]?|I*\6Em
9.--create:用于创建表