mysqlslap压力测试介绍
发表于:2024-12-13 作者:千家信息网编辑
千家信息网最后更新 2024年12月13日,mysqlslap是一款压力测试工具,它会模拟多个客户端访问MySQL服务,记录各个阶段的消耗时间。主要参数如下:--host=host_name, -h host_name MySQL服务器所在的主
千家信息网最后更新 2024年12月13日mysqlslap压力测试介绍mysqlslap是一款压力测试工具,它会模拟多个客户端访问MySQL服务,记录各个阶段的消耗时间。
主要参数如下:
--host=host_name, -h host_name MySQL服务器所在的主机
--user=user_name, -u user_name 连接到MySQL服务器所使用的用户名
--password[=password], -p[password] 连接到MySQL服务器所使用的密码
--query=value, -q value 执行的SQL语句
--number-of-queries=N 每个客户端执行SQL语句的次数。需要注意的是,每条SQL之间的;都会算作一次,例如--query="use test;insert into t values(null)"就是2次。
mysqlslap --delimiter=";" --number-of-queries=10 --query="use test;insert into t values(null)" 这个语句会执行5次INSERT操作
--concurrency=N, -c N 模拟客户端的并行度
--iterations=N, -i N 执行压力测试的次数
--create-schema=value 在哪个用户下执行压力测试
--commit=N 执行多少条SQL进行提交,默认没有提交
--auto-generate-sql, -a 当没有指定SQL语句的时候,自动生成SQL语句
--number-char-cols=N, -x N 自动生成SQL语句中,VARCHAR字段的个数
--number-int-cols=N, -y N 自动生成SQL语句中,INT字段的个数
--auto-generate-sql-add-autoincrement 自动生成SQL语句所使用的表中,增加一个自增序列
--auto-generate-sql-execute-number=N 自动生成SQL语句的查询次数
--auto-generate-sql-guid-primary 增加一个GUID为基础的主键到自动生成的表中
--auto-generate-sql-load-type=type 指定压力测试的类型。可以设置的类型有read (表扫描)、write (插入语句)、key (读主键)、update (更新主键)或mixed(一半插入操作、一半查询操作),默认类型是mixed
--auto-generate-sql-secondary-indexes=N 指定自动生成的表中,非主键索引的数量,默认是没有创建非主键索引
--auto-generate-sql-unique-query-number=N 指定对自动生成的表执行查询的不同个数,默认值是10
--auto-generate-sql-unique-write-number=N 指定对自动生成的表执行写操作的不同个数,默认值是10
示例:
使用neo用户登录,模拟30个用户连接,共执行10万次请求
[root@localhost ~]# /software/bin/mysqlslap -h 192.168.78.141 --user=system --password=system --query="use fire;select * from test2" --number-of-queries=100000 -c 30 -i 10 --create-schema=neo
--执行结果
Benchmark
Average number of seconds to run all queries: 6.779 seconds
Minimum number of seconds to run all queries: 6.607 seconds
Maximum number of seconds to run all queries: 7.310 seconds
Number of clients running queries: 30
Average number of queries per client: 3333
使用自动生成SQL方式,模拟30个用户并发连接,执行10000次不同的查询,每执行10000条SQL语句进行事务提交
[root@localhost ~]# /software/bin/mysqlslap -h 192.168.78.141 --user=system --password=system --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-execute-number=100000 --
commit=10000 --create-schema=neo
Benchmark
Average number of seconds to run all queries: 16.332 seconds
Minimum number of seconds to run all queries: 16.332 seconds
Maximum number of seconds to run all queries: 16.332 seconds
Number of clients running queries: 1
Average number of queries per client: 100000
主要参数如下:
--host=host_name, -h host_name MySQL服务器所在的主机
--user=user_name, -u user_name 连接到MySQL服务器所使用的用户名
--password[=password], -p[password] 连接到MySQL服务器所使用的密码
--query=value, -q value 执行的SQL语句
--number-of-queries=N 每个客户端执行SQL语句的次数。需要注意的是,每条SQL之间的;都会算作一次,例如--query="use test;insert into t values(null)"就是2次。
mysqlslap --delimiter=";" --number-of-queries=10 --query="use test;insert into t values(null)" 这个语句会执行5次INSERT操作
--concurrency=N, -c N 模拟客户端的并行度
--iterations=N, -i N 执行压力测试的次数
--create-schema=value 在哪个用户下执行压力测试
--commit=N 执行多少条SQL进行提交,默认没有提交
--auto-generate-sql, -a 当没有指定SQL语句的时候,自动生成SQL语句
--number-char-cols=N, -x N 自动生成SQL语句中,VARCHAR字段的个数
--number-int-cols=N, -y N 自动生成SQL语句中,INT字段的个数
--auto-generate-sql-add-autoincrement 自动生成SQL语句所使用的表中,增加一个自增序列
--auto-generate-sql-execute-number=N 自动生成SQL语句的查询次数
--auto-generate-sql-guid-primary 增加一个GUID为基础的主键到自动生成的表中
--auto-generate-sql-load-type=type 指定压力测试的类型。可以设置的类型有read (表扫描)、write (插入语句)、key (读主键)、update (更新主键)或mixed(一半插入操作、一半查询操作),默认类型是mixed
--auto-generate-sql-secondary-indexes=N 指定自动生成的表中,非主键索引的数量,默认是没有创建非主键索引
--auto-generate-sql-unique-query-number=N 指定对自动生成的表执行查询的不同个数,默认值是10
--auto-generate-sql-unique-write-number=N 指定对自动生成的表执行写操作的不同个数,默认值是10
示例:
使用neo用户登录,模拟30个用户连接,共执行10万次请求
[root@localhost ~]# /software/bin/mysqlslap -h 192.168.78.141 --user=system --password=system --query="use fire;select * from test2" --number-of-queries=100000 -c 30 -i 10 --create-schema=neo
--执行结果
Benchmark
Average number of seconds to run all queries: 6.779 seconds
Minimum number of seconds to run all queries: 6.607 seconds
Maximum number of seconds to run all queries: 7.310 seconds
Number of clients running queries: 30
Average number of queries per client: 3333
使用自动生成SQL方式,模拟30个用户并发连接,执行10000次不同的查询,每执行10000条SQL语句进行事务提交
[root@localhost ~]# /software/bin/mysqlslap -h 192.168.78.141 --user=system --password=system --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-execute-number=100000 --
commit=10000 --create-schema=neo
Benchmark
Average number of seconds to run all queries: 16.332 seconds
Minimum number of seconds to run all queries: 16.332 seconds
Maximum number of seconds to run all queries: 16.332 seconds
Number of clients running queries: 1
Average number of queries per client: 100000
语句
自动生成
生成
用户
压力
测试
个数
服务
查询
不同
客户
服务器
次数
类型
字段
客户端
索引
主机
之间
事务
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全发展指数
数据库防火墙关闭
福建网络营销软件开发产品介绍
软件开发过程优缺点
软件开发经理的述职报告
非全日制网络安全
字节跳动服务器安装
湖南睿城互联网科技有限公司
112核双路服务器
服务器可以运行几个域名
wps一列去重复的数据库
广西贵港市弘全软件开发有限公司
安徽诚信网络技术咨询项目
国产文件服务器品牌
蚌埠计算机软件开发
文件服务器原理
c#敏捷软件开发 百度网盘
网络技术选择
刚起步的软件开发公司的员工组成
虚拟服务器设置好但访问不了
怎么把数据库表里的数据删除
1x网络安全
招远微信公众号软件开发解决方案
失落方舟俄服选哪个服务器
网络安全实战渗透经验
嘉凯城互联网科技股票
非关系数据库树结构
手机国家税务软件开发票
电子网络安全竞赛
服务器网页中毒怎么处理
- 上一篇
mysql报Can't create/write to file '/tmp/ib0n3frL' (Errcode: 13 - Permission denied)
初始化数据库报错[root@Master mysql-5.6.24]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir
- 下一篇
centos6上安装RAC权限绑定问题
自己的环境如下:[root@syk1 ~]# ll /dev/mapper/*crw-rw---- 1 root root 10, 58 Oct 24 07:59 /dev/mapper/contro