压力测试工具MySQL mysqlslap
MySQL mysqlslap压测
2016-09-12 17:49 by pursuer.chen, 771 阅读, 0 评论, 收藏, 编辑
介绍
mysqlslap是mysql自带的一个性能压测工具;mysqlslap用于和其它的一些性能压测工具一样可以自己造数据进行压测。mysqlslap的报告比较简单主要体现在执行的时间方面,没有sysbench那样的tps、qps等更详细的包括。
参数

--auto-generate-sql -a 自动生成MySQL测试语句
--auto-generate-sql-add-autoincrement 添加AUTO_INCREMENT字段
--auto-generate-sql-execute-number=# 查询的个数
--auto-generate-sql-guid-primary 添加GUID字段
--auto-generate-sql-load-type=name mixed:混合、update:更新、write:写入、key:读主键、read:查询
--auto-generate-sql-secondary-indexes=# 设置索引字段个数
--auto-generate-sql-unique-query-number=# 生成N条不同的query sql语句
--auto-generate-sql-unique-write-number=# 生成N条不同的write sql语句
--auto-generate-sql-write-number=# 每个线程write sql语句数量
--commit=# 设置每多少条sql语句提交一次
--compress -C 启用压缩协议
--concurrency=# -c 客户端数量(并发量)
--create=name 测试的SQL语句或文件
--create-schema=name 测试的数据名
--csv=name 生产CSV格式数据文件
--debug -# 写调试日志(windows不可用) 如:mysqlslap -a -#"d:t:o,c:/debug.txt"
--debug-check 测试后打印调试信息(windows不可用)
--debug-info -T 打印内存和CPU的相关信息
--default-auth=plugin 验证插件
--delimiter=str -F 语句分隔符默认是 ;
--detach=# 执行N条语句后断开重连
--enable-cleartext-plugin 启用明文身份验证插件
--engine=engine_name -e 测试引擎 如:mysqlslap -e"myisam"或-e"myisam,innodb"
--help 帮助信息
--host=host_name -h 数据库host
--iterations=# -i 重复运行的次数
--login-path=name 登陆配置文件
--no-drop 测试后不删除schema
--number-char-cols=# -x 设置VARCHAR类型字段数量
--number-int-cols=# -y 设置INT类型字段数量
--number-of-queries=# 每个客户端运行sql语句数量
--only-print 仅显示将被运行的SQL语句--delimiter选项影响
--password=password -p 数据库密码
--pipe 启用管道
--plugin-dir=path 插件目录
--port=port_num -P 数据库端口
--post-query=value 测试后执行的SQL语句
--post-system=str 测试后执行的系统语句
--pre-query=value 测试前执行的SQL语句
--pre-system=str 测试前执行的系统语句
--protocol=type 链接协议 tcp, socket, pipe
--query=value -q 测试的SQL语句 如:mysqlslap --query="SELECT * FROM t1"
--secure-auth 不要发送密码到服务器
--silent -s 不显示测试(静音测试)
--socket=path -S 连接服务器的socket
--ssl-ca=file_name
--ssl-capath=dir_name
--ssl-cert=file_name
--ssl-cipher=cipher_list
--ssl-crl=file_name
--ssl-crlpath=dir_name
--ssl-key=file_name
--ssl-verify-server-cert
--user=user_name -u 数据库用户名
--verbose -v 输出更多的信息
--version -V 版本信息

例
1.分别测试100、200、400个并发执行10w条SQL。
mysqlslap -uroot -proot -h192.168.10.43 -P3306 --create-schema=chenmh --delimiter=";" --query="call pro_auto_select_pri" --concurrency=100,200,400 --number-of-queries=100000
注意:报告输出的时间主要体现在执行完--number-of-queries指定的查询所花的时间,这里分别是100个并发、200个并发、400个并发执行10w条call所花的时间。默认不指定--iterations代表重复执行一次操作,如果重复执行N此输出的时间也是反应的是单次循环所花的时间。
2.生成csv
mysqlslap -a -e"myisam,innodb" --csv="c:/a.csv"
总结
mysqlslap主要还是针对数据库的性能测试,并且自动测试功能有限,而且生产报表也不够详细,所以建议还是使用sysbench来做基准测试。
压力测试工具MySQL mysqlslap的更多相关文章
- MySQL数据库基准压力测试工具之MySQLSlap使用实例
一.Mysqlslap介绍 mysqlslap是MySQL5.1之后自带的benchmark基准测试工具,类似Apache Bench负载产生工具,生成schema,装载数据,执行benckmark和 ...
- mysql之 mysql数据库压力测试工具(mysqlslap)
mysqlslap是从MySQL的5.1.4版开始就开始官方提供的压力测试工具.通过模拟多个并发客户端并发访问MySQL来执行压力测试,同时提供了较详细的SQL执行数据性能报告,并且能很好的对比多个存 ...
- MySQL自带的性能压力测试工具mysqlslap
mysqlslap是从MySQL的5.1.4版开始就开始官方提供的压力测试工具. 通过模拟多个并发客户端并发访问MySQL来执行压力测试,同时提供了较详细的SQL执行数据性能报告,并且能很好的对比多个 ...
- mysqlslap 一个MySQL数据库压力测试工具
在Xen/KVM虚拟化中,一般来说CPU.内存.网络I/O的虚拟化效率都非常高了,而磁盘I/O虚拟化效率较低,从而磁盘可能会是瓶颈.一般来说,数据库对磁盘I/O要求比较高的应用,可以衡量一下在客户机中 ...
- mysql压力测试工具Mysqlslap
mysql 性能测试工具:The MySQL Benchmark Suite(不支持多CPU而且不是压力工具) 压力测试工具: MySQL super-smack:需要找能连接外网的机器,能连接外网的 ...
- (转)MySQL自带的性能压力测试工具mysqlslap详解
mysqlslap 是 Mysql 自带的压力测试工具,可以模拟出大量客户端同时操作数据库的情况,通过结果信息来了解数据库的性能状况 mysqlslap 的一个主要工作场景就是对数据库服务器做基准测试 ...
- 数据库相关文章转载(2) MySQL自带的性能压力测试工具mysqlslap详解
PS:今天一同事问我有木有比较靠谱的mysql压力测试工具可用.其实mysql自带就有一个叫mysqlslap的压力测试工具,还是模拟的不错的.下面举例说说.mysqlslap是从5.1.4版开始的一 ...
- (总结)MySQL自带的性能压力测试工具mysqlslap详解
PS:今天一同事问我有木有比较靠谱的mysql压力测试工具可用.其实mysql自带就有一个叫mysqlslap的压力测试工具,还是模拟的不错的.下面举例说说.mysqlslap是从5.1.4版开始的一 ...
- Mysql 压力测试工具 mysqlslap
转载至文章作者:杜亦舒 链接:https://www.sdk.cn/news/4512 来源:SDK.cn 摘要:mysqlslap 是 Mysql 自带的压力测试工具,可以模拟出大量客户端同时操作数 ...
随机推荐
- ASP.NET MVC 使用 Datatables (1)
具体步骤: 1.建立实体类 public class Asset { public System.Guid AssetID { get; set; } [Display(Name = "Ba ...
- php -- in_array函数
in_array 检查数组中是否存在某个值 说明 bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ...
- redis是如何存储对象和集合的
在项目中,缓存以及mq消息队列可以说是不可或缺的2个重要技术.前者主要是为了减轻数据库压力,大幅度提升性能.后者主要是为了提高用户的体验度,我理解的是再后端做的一个ajax请求(异步),并且像ribb ...
- leetcode -- Unique Binary Search Trees todo
Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...
- win10 设置C盘访问权限
“以管理员身份运行” cmd.exe C:\Windows\system32>icacls "C:\Program Files\Epic Games" /setintegri ...
- NestedScrollView,RecyclerView
为什么把它们放一起呢, 是因为它有着相同的特点 在新版的support-v4兼容包里面有一个NestedScrollView控件,这个控件其实和普通的ScrollView并没有多大的区别,这个控件其实 ...
- M451例程讲解之按键
/**************************************************************************//** * @file main.c * @ve ...
- hdu1024(最大m串子序列)
m的范围没给,很坑爹 Max Sum Plus Plus Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K ( ...
- 【BZOJ3781、2038】莫队算法2水题
[BZOJ3781]小B的询问 题意:有一个序列,包含N个1~K之间的整数.他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数 ...
- 【IIS】模块 DLL C:\Windows\System32\inetsrv\authcert.dll 未能加载。返回的数据为错误信息。
解决方案,check IIS --Client Certificate Mapping Authentication installed?