首页 数据库 mysql教程 MySQL压力测试工具_MySQL

MySQL压力测试工具_MySQL

Jun 01, 2016 pm 01:41 PM
压力测试 工具

比特网
MySQL压力测试工具 mysqlslap --create-schema=example --query="SELECT * FROM group_message force index(group_message_author_subject) WHERE author = '3' subject LIKE 'weiurazs%'" --iterations=10000测试的过程需要生成测试表,插入测试数据,这个mysqlslap可以自动生成,默认生成一个mysqlslap的schema,如果已经存在则先删除,这里要注意了,不要用–create-schema指定已经存在的库,否则后果可能很严重。可以用–only-print来打印实际的测试过程:   $mysqlslap -a –only-printDROP SCHEMA IF EXISTS mysqlslap;CREATE SCHEMA mysqlslap;use mysqlslap;CREATE TABLE g_user (user_id INT(32) ,user_name VARCHAR(128));INSERT INTO g_user VALUES (1,'liuxiaobin');…SELECT user_id,user_name FROM g_user;INSERT INTO g_user VALUES (2,'liudabin');DROP SCHEMA IF EXISTS mysqlslap; 可以看到最后由删除一开始创建的schema的动作,整个测试完成后不会在数据库中留下痕迹。假如我们执行一次测试,分别50和100个并发,执行1000次总查询,那么: $mysqlslap -a –concurrency=50,100 –number-of-queries 1000 –debug-infoBenchmarkAverage number of seconds to run all queries: 0.375 secondsMinimum number of seconds to run all queries: 0.375 secondsMaximum number of seconds to run all queries: 0.375 secondsNumber of clients running queries: 50Average number of queries per client: 20   BenchmarkAverage number of seconds to run all queries: 0.453 secondsMinimum number of seconds to run all queries: 0.453 secondsMaximum number of seconds to run all queries: 0.453 secondsNumber of clients running queries: 100Average number of queries per client: 10 User time 0.29, System time 0.11Maximum resident set size 0, Integral resident set size 0Non-physical pagefaults 4032, Physical pagefaults 0, Swaps 0Blocks in 0 out 0, Messages in 0 out 0, Signals 0Voluntary context switches 7319, Involuntary context switches 681 上结果可以看出,50和100个并发分别得到一次测试结果(Benchmark),并发数越多,执行完所有查询的时间越长。为了准确起见,可以多迭代测试几次: $ mysqlslap -a –concurrency=50,100 –number-of-queries 1000 –iterations=5 –debug-infoBenchmarkAverage number of seconds to run all queries: 0.380 secondsMinimum number of seconds to run all queries: 0.377 secondsMaximum number of seconds to run all queries: 0.385 secondsNumber of clients running queries: 50Average number of queries per client: 20 BenchmarkAverage number of seconds to run all queries: 0.447 secondsMinimum number of seconds to run all queries: 0.444 secondsMaximum number of seconds to run all queries: 0.451 secondsNumber of clients running queries: 100Average number of queries per client: 10   User time 1.44, System time 0.67Maximum resident set size 0, Integral resident set size 0Non-physical pagefaults 17922, Physical pagefaults 0, Swaps 0Blocks in 0 out 0, Messages in 0 out 0, Signals 0Voluntary context switches 36796, Involuntary context switches 4093 测试同时不同的存储引擎的性能进行对比: $ mysqlslap -a –concurrency=50,100 –number-of-queries 1000 –iterations=5 –engine=myisam,innodb –debug-infoBenchmarkRunning for engine myisamAverage number of seconds to run all queries: 0.200 secondsMinimum number of seconds to run all queries: 0.188 secondsMaximum number of seconds to run all queries: 0.210 secondsNumber of clients running queries: 50Average number of queries per client: 20 BenchmarkRunning for engine myisamAverage number of seconds to run all queries: 0.238 secondsMinimum number of seconds to run all queries: 0.228 secondsMaximum number of seconds to run all queries: 0.251 secondsNumber of clients running queries: 100Average number of queries per client: 10 BenchmarkRunning for engine innodbAverage number of seconds to run all queries: 0.375 secondsMinimum number of seconds to run all queries: 0.370 secondsMaximum number of seconds to run all queries: 0.379 secondsNumber of clients running queries: 50Average number of queries per client: 20   BenchmarkRunning for engine innodbAverage number of seconds to run all queries: 0.443 secondsMinimum number of seconds to run all queries: 0.440 secondsMaximum number of seconds to run all queries: 0.447 secondsNumber of clients running queries: 100Average number of queries per client: 10 User time 2.83, System time 1.66Maximum resident set size 0, Integral resident set size 0Non-physical pagefaults 34692, Physical pagefaults 0, Swaps 0Blocks in 0 out 0, Messages in 0 out 0, Signals 0Voluntary context switches 87306, Involuntary context switches 10326 MySQL从5.1.4版开始带有一个压力测试工具mysqlslap,通过模拟多个并发客户端访问mysql来执行测试,使用起来非常的简单。通过mysqlslap –help可以获得可用的选项, –auto-generate-sql, -a自动生成测试表和数据   –auto-generate-sql-load-type=type测试语句的类型。取值包括:read,key,write,update和mixed(默认)。 –number-char-cols=N, -x N自动生成的测试表中包含多少个字符类型的列,默认1 –number-int-cols=N, -y N自动生成的测试表中包含多少个数字类型的列,默认1 –number-of-queries=N总的测试查询次数(并发客户数×每客户查询次数) –query=name,-q使用自定义脚本执行测试,例如可以调用自定义的一个存储过程或者sql语句来执行测试。 –create-schema测试的schema,MySQL中schema也就是database –commint=N多少条DML后提交一次 –compress, -C如果服务器和客户端支持都压缩,则压缩信息传递 –concurrency=N, -c N并发量,也就是模拟多少个客户端同时执行select。可指定多个值,以逗号或者–delimiter参数指定的值做为分隔符   –engine=engine_name, -e engine_name创建测试表所使用的存储引擎,可指定多个 –iterations=N, -i N测试执行的迭代次数 –detach=N执行N条语句后断开重连 –debug-info, -T打印内存和CPU的信息 –only-print只打印测试语句而不实际执行  作者 bengda bitsCN.com

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Gitee Pages静态网站部署失败:单个文件404错误如何排查和解决? Gitee Pages静态网站部署失败:单个文件404错误如何排查和解决? Apr 04, 2025 pm 11:54 PM

GiteePages静态网站部署失败:404错误排查与解决在使用Gitee...

Avue-crud行编辑模式下如何手动触发单元格的onBlur事件? Avue-crud行编辑模式下如何手动触发单元格的onBlur事件? Apr 04, 2025 pm 02:00 PM

在Avue组件库中实现Avue-crud行编辑的onBlur事件手动触发Avue-crud组件提供了便捷的行内编辑功能,但有时我们需要�...

如何用浏览器内嵌脚本自动化网页元素操作和数值计算? 如何用浏览器内嵌脚本自动化网页元素操作和数值计算? Apr 04, 2025 pm 12:09 PM

网页自动化与数值计算:基于浏览器内嵌脚本的实现本文将探讨如何使用浏览器内嵌脚本实现网页元素操作和数...

如何利用AI工具在React   Vite项目中快速搭建前台页面? 如何利用AI工具在React Vite项目中快速搭建前台页面? Apr 04, 2025 pm 01:45 PM

如何在后端开发中快速搭建前台页面?作为一个拥有三四年经验的后端开发者,掌握了基础的javascript、css和html�...

如何在渐变背景的卡券布局上实现缺口效果? 如何在渐变背景的卡券布局上实现缺口效果? Apr 05, 2025 am 07:48 AM

实现卡券布局的缺口效果在设计卡券布局时,常常会遇到需要在卡券上添加缺口的需求,尤其是在背景为渐变色...

在Chrome DevTools中如何有效修改并重放请求的Cookies? 在Chrome DevTools中如何有效修改并重放请求的Cookies? Apr 04, 2025 pm 05:48 PM

在ChromeDevTools中如何有效修改并重放请求的Cookies在使用Chrome...

如何用pnpm代替npm创建React应用? 如何用pnpm代替npm创建React应用? Apr 04, 2025 pm 06:45 PM

关于使用pnpm代替npm创建React应用在使用npx...

H5页面制作的素材从哪里获取 H5页面制作的素材从哪里获取 Apr 05, 2025 pm 11:33 PM

H5页面素材来源主要有:1. 专业素材网站(付费,质量高、版权清晰);2. 自制素材(独特性高,但耗时费力);3. 开源素材库(免费,需仔细筛选);4. 图片/视频网站(需核实版权)。此外,素材风格统一、尺寸适配、压缩处理、版权保护是需要注意的关键点。

See all articles