mysqlslap压力测试

mysqlslap一些常用参数:
--number-of-queries:指定测试要查询的语句次数
-c,-concurrency:指定测试请求的并行度
-i,--iterations:指定测试运行的次数
--create-schema:指定测试在哪个schema下运行
-a,--auto-generater-sql:自动生成测试所需的sql语句
-x,--number-char-cols:指定自动生产的表对象中的varchar类型的数量,默认只有一个
-y,--number-int-cols:指定自动生成的表中int类型的数量,默认只有一个
--auto-generate-sql-add-autoeincrement:自动生成的表中在表中添加auto_increment列
--auto-generate-sql-execute-number:指定此次测试要执行的查询次数
--auto-generate-sql-guid-primary:自动生成基于guid为主键的表,本参数与--auto-generate-sql-add-autoeincrement互斥
--auto-generate-sql-load-type:指定测试的类型,有如下集中
                                          read:读操作
                                          write:写操作
                                          key:通过主键读
                                          update:更新操作
                                          mixed:既有读也有写,此为默认值          
--auto-generate-sqlsecondary-indexes:指定自动生成的表中的辅助索引
--auto-generate-sql-unique-query-number:指定生成的查询语句的个数,默认值为10
--auto-generate-sql-unique-write-number:指定生成的插入语句个数,默认为10
--auto-generate-sql-write-number:指定每个线程执行时插入的记录数,默认是100个
--commit:每多少条语句提交一次
-T, --debug-info:打印一些debug信息在最后

下面语句的意思是模拟50个客户端的并发,每个客户端查询200个语句,反复运行10次
[root@mysql1 extra]# mysqlslap -a -x 5 -y 3 --auto-generate-sql-add-autoincrement  -c 50 -i 10 --number-of-queries=200 --engine=myisam,innodb --debug-info -uroot -p
下面语句的意思是模拟30个客户端的并发,测试查询的次数为1000,生成10个sql语句,意味着每个sql语句执行100次,没执行一次都提交
[root@mysql1 extra]# mysqlslap -a -x 10 -y 3 --auto-generate-sql-add-autoincrement --auto-generate-sql-execute-number=1000 --auto-generate-sql-unique-query-number=10 -c 30 --commit=1 --create-schema=brent --debug-info -uroot -p

例如比对不同的commit的,发现批量的commit速度提供了很多,结果如下:
[root@mysql1 extra]# mysqlslap -a -x 10 -y 3 --auto-generate-sql-add-autoincrement --auto-generate-sql-execute-number=1000 --auto-generate-sql-unique-query-number=10 -c 30 --commit=1 --create-schema=brent --debug-info -uroot -p
Enter password:
Benchmark
     Average number of seconds to run all queries: 9.494 seconds
     Minimum number of seconds to run all queries: 9.494 seconds
     Maximum number of seconds to run all queries: 9.494 seconds
     Number of clients running queries: 30
     Average number of queries per client: 1000


User time 0.18, System time 0.31
Maximum resident set size 2908, Integral resident set size 0
Non-physical pagefaults 855, Physical pagefaults 0, Swaps 0
Blocks in 8 out 0, Messages in 0 out 0, Signals 0
Voluntary context switches 119879, Involuntary context switches 119

[root@mysql1 extra]# mysqlslap -a -x 10 -y 3 --auto-generate-sql-add-autoincrement --auto-generate-sql-execute-number=1000 --auto-generate-sql-unique-query-number=10 -c 30 --commit=100 --create-schema=brent --debug-info -uroot -p
Enter password:
Benchmark
     Average number of seconds to run all queries: 4.711 seconds
     Minimum number of seconds to run all queries: 4.711 seconds
     Maximum number of seconds to run all queries: 4.711 seconds
     Number of clients running queries: 30
     Average number of queries per client: 1000


User time 0.14, System time 0.18
Maximum resident set size 2988, Integral resident set size 0
Non-physical pagefaults 857, Physical pagefaults 10, Swaps 0
Blocks in 1552 out 0, Messages in 0 out 0, Signals 0
Voluntary context switches 59737, Involuntary context switches 396


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值