mysqlslap是一个诊断程序,旨在模拟MySQL服务器的客户端负载并报告每个阶段的时间。 它的作用就好像多个客户端正在访问服务器。
使用语法如下:
mysqlslap [options]
选项有很多,各选项的用法请参考文章底部 官方文档
我总结了三种用法:
1 提供自己的创建和查询SQL语句
(1)命令行提供
mysqlslap --delimiter=";" --create="CREATE TABLE a (b int);INSERT INTO a VALUES (23)" --query="SELECT * FROM a" --concurrency=50 --iterations=200
(2)从文件中加载
mysqlslap --concurrency=5 --iterations=5 --query=query.sql --create=create.sql --delimiter=";"
2 让mysqlslap自己构造查询语句测试性能
mysqlslap --concurrency=5 --iterations=20 --number-int-cols=2 --number-char-cols=3 --auto-generate-sql
3 指定远程数据库进行测试
mysqlslap -u root -h localhost -q "select * from test_db.user where id = 1 " --create-schema=test_db
--create-schema=val 参数用于指定要测试的数据库,同时,这里的查询语句也可以从文件中加载
官方文档:https://dev.mysql.com/doc/refman/5.6/en/mysqlslap.html