mysql压力测试工具mysqlslap测试

这里列一些主要的参数,更详细的说明参考官方手册。如果是系统自带或者使用rpm包安装的mysql,安装了MySQL-client端的包就有mysqlslap这个工具。
下图是运行mysqlslap -a -c 500 -i 10 -uroot -p123456测试时mysql的连接进程数:

各种测试参数实例(-p后面跟的是mysql的root密码):
单线程测试。测试做了什么。
# mysqlslap -a -uroot -p123456

多线程测试。使用–concurrency来模拟并发连接。
# mysqlslap -a -c 100 -uroot -p123456

迭代测试。用于需要多次执行测试得到平均值。
# mysqlslap -a -i 10 -uroot -p123456

# mysqlslap ---auto-generate-sql-add-autoincrement -a -uroot -p123456

# mysqlslap -a --auto-generate-sql-load-type=read -uroot -p123456

# mysqlslap -a --auto-generate-secondary-indexes=3 -uroot -p123456

# mysqlslap -a --auto-generate-sql-write-number=1000 -uroot -p123456

# mysqlslap --create-schema world -q "select count(*) from City" -uroot -p123456

# mysqlslap -a -e innodb -uroot -p123456

# mysqlslap -a --number-of-queries=10 -uroot -p123456

测试同时不同的存储引擎的性能进行对比:
# mysqlslap -a --concurrency=50,100 --number-of-queries 1000 --iterations=5 --engine=myisam,innodb --debug-info -uroot -p123456
执行一次测试,分别50和100个并发,执行1000次总查询:
# mysqlslap -a --concurrency=50,100 --number-of-queries 1000 --debug-info -uroot -p123456
50和100个并发分别得到一次测试结果(Benchmark),并发数越多,执行完所有查询的时间越长。为了准确起见,可以多迭代测试几次:
# mysqlslap -a --concurrency=50,100 --number-of-queries 1000 --iterations=5 --debug-info -uroot -p123456

mysqlslap是一个mysql官方提供的压力测试工具。以下是比较重要的参数:
–defaults-file,配置文件存放位置
–concurrency,并发数
–engines,引擎
–iterations,迭代的实验次数
–socket,socket文件位置

自动测试:

–auto-generate-sql,自动产生测试SQL
–auto-generate-sql-load-type,测试SQL的类型。类型有mixed,update,write,key,read。
–number-of-queries,执行的SQL总数量
–number-int-cols,表内int列的数量
–number-char-cols,表内char列的数量

可以使用mysqlslap --help来显示使用方法:
Default options are read from the following files in the given order:
/etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf
--concurrency代表并发数量,多个可以用逗号隔开,concurrency=10,50,100, 并发连接线程数分别是10、50、100个并发。
--engines代表要测试的引擎,可以有多个,用分隔符隔开。
--iterations代表要运行这些测试多少次。
--auto-generate-sql 代表用系统自己生成的SQL脚本来测试。
--auto-generate-sql-load-type 代表要测试的是读还是写还是两者混合的(read,write,update,mixed)
--number-of-queries 代表总共要运行多少次查询。每个客户运行的查询数量可以用查询总数/并发数来计算。
--debug-info 代表要额外输出CPU以及内存的相关信息。
--number-int-cols :创建测试表的 int 型字段数量
--auto-generate-sql-add-autoincrement : 代表对生成的表自动添加auto_increment列,从5.1.18版本开始
--number-char-cols 创建测试表的 char 型字段数量。
--create-schema 测试的schema,MySQL中schema也就是database。
--query  使用自定义脚本执行测试,例如可以调用自定义的一个存储过程或者sql语句来执行测试。
--only-print 如果只想打印看看SQL语句是什么,可以用这个选项。
mysqlslap -umysql -p123 --concurrency=100 --iterations=1 --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-load-type=mixed --engine=myisam --number-of-queries=10 --debug-info
或:
指定数据库和sql语句:
mysqlslap -h192.168.3.18 -P4040 --concurrency=100 --iterations=1 --create-schema='test' --query='select * from test;' --number-of-queries=10 --debug-info -umysql -p123
要是看到底做了什么可以加上:--only-print
Benchmark
        Average number of seconds to run all queries: 25.225 seconds
        Minimum number of seconds to run all queries: 25.225 seconds
        Maximum number of seconds to run all queries: 25.225 seconds
        Number of clients running queries: 100
        Average number of queries per client: 0
以上表明100个客户端同时运行要25秒
 
再如:
mysqlslap -uroot -p123456 --concurrency=100 --iterations=1 --engine=myisam --create-schema='haodingdan112' --query='select *  From order_boxing_transit where id = 10' --number-of-queries=1 --debug-info

时间: 2024-08-20 13:33:43

mysql压力测试工具mysqlslap测试的相关文章

服务器性能测试 测试工具 如何测试?

问题描述 服务器性能测试 测试工具 如何测试? 服务器性能测试有哪些方法? 测试工具有哪些? 如何测试? 服务器压力测试怎么做? 解决方案 1.衡量服务器性能,通常有以下指标:吞吐量,连接建立速率,并发连接数: 2.测试服务器性能通常采用专门的测试工具来测试,硬件工具有smartbit,ixia等,价格通常不菲,软件测试工具由http_load, web_load, opensta等. 3.要测试服务器性能的话,首先需要搭建一个测试环境,如果使用硬件测试器的话(性能好,功能强),一般都有很好的手

apache压力测试工具ab测试使用解析

ab是一款很好用的压力测试工具,linux自带不需要另外安装,一下是ab其中的几个关键参数 还有 使用实例 Requests per second:每秒多少请求,这个是非常重要的参数数值,服务器的吞吐量 Time per request: 用户平均请求等待时间 Time per request:服务器平均处理时间,也就是服务器吞吐量的倒数 Transfer rate:每秒获取的数据长度 例如,百度的压力测试 1000个请求 50个并发 ab -n 1000 -c 50 http://www.11

MySQL压测工具mysqlslap的介绍与使用_Mysql

一.Mysqlslap介绍 mysqlslap是MySQL5.1之后自带的benchmark基准测试工具,类似Apache Bench负载产生工具,生成schema,装载数据,执行benckmark和查询数据,语法简单,灵活,容易使用.该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较.mysqlslap为mysql性能优化前后提供了直观的验证依据,笔者建议系统运维人员应该掌握一些常见的压力测试工具,这样才能较为准确的掌握线上系统能够支撑的用户

使用IBM Rational的统一的测试工具集测试并仿真Web Services

IBM Rational Test Workbench(RTW)是 IBM Rational 的统一的测试工具集,包括功能测试.性能测试 .接口测试等模块,满足客户多种类型的自动化测试需求.其中 Rational Integration Tester(以下简称 RIT)是接口测试工具,可以对包括 Web Services.HTTP.Socket.MQ.Database 等多种类型的接口直接进 行自动化的功能/性能测试测试.本文介绍如何通过 Rational Integration Tester

安捷伦推创新型手持式测试工具 应对测试测量新挑战

随着电气和电子系统变得越来越复杂,各种日常任务,如维修和故障诊断,预防性维护,设备调试和校准都迫切需要简化,从而减少停机时间和提高生产率. 针对这些挑战,安捷伦科技公司日前宣布推出延续传统创新和专业技术的手持测试工具,并推出最新无线远程连接解决方案,帮助测试工程师解决测试测量工作中面临的诸多挑战,从而提升生产力. 据安捷伦基础测量仪器事业部副总裁兼总经理Ee Huei Sin介绍,该无线连通性解决方案的核心是U1177A.这是一种紧凑蓝牙无线适配器,可插入Agilent全系列11种手持式数字万用

Linux下webbench网站压力测试工具安装测试

一.安装编译工具  代码如下 复制代码 yum install ctags wget make apr* autoconf automake gcc gcc-c++ 二.下载webbench  代码如下 复制代码 wget http://home.tiscali.cz/cz210552/distfiles/webbench-1.5.tar.gz  #下载 三.安装webbench  代码如下 复制代码 tar zxvf webbench-1.5.tar.gz  #解压 cd webbench-1

Mysqlslap MySQL压力测试工具 简单教程_Mysql

MySQL从5.1.4版开始带有一个压力测试工具mysqlslap,通过模拟多个并发客户端访问mysql来执行测试,使用起来非常的简单.通过mysqlslap –help可以获得可用的选项,这里列一些主要的参数,更详细的说明参考官方手册. 复制代码 代码如下: –auto-generate-sql, -a 自动生成测试表和数据 –auto-generate-sql-load-type=type 测试语句的类型.取值包括:read,key,write,update和mixed(默认). –numb

MySQL压力测试方法 如何使用mysqlslap测试MySQL的压力?_Mysql

其实mysql测试也没有这么复杂,除了一些常用的select\insert\update\deletc这些外,其实测试他的并发量才是最重要的.比如在连接数1K的时候,并发量能否满足当前请求\服务器性能.内存CPU使用情况.说白了,测试mysql就是测试他的配置文件和并发量及服务器性能. 一.工具 首选工具mysql自带的:mysqlslap –auto-generate-sql, -a 自动生成测试表和数据 –auto-generate-sql-load-type=type 测试语句的类型.取值

Mysql压力测试shell脚本

Mysql压力测试shell脚本 Mysql自带了压力测试工具mysqlslap,所以我们可以不用自己编写程序来测试Mysql读取的压力.压力测试shell脚本如下:  www.bitsCN.com [plain] #!/bin/sh while true do mysqlslap --concurrency=100 --iterations=10 --create-schema='test' --query="insert into test(c1,c2,c3,c4) values(1,1,1