MySQL基准测试工具-mysqlslap

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

 mysqlslapMySQL5.1之后自带的benchmark基准测试工具,该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。

      使用方式:

      --concurrency  并发数量 (可逗号隔开),例如:concurrency=10,50,100 并发连接线程数是10,50,100

      --engines 要测试的存储引擎,逗号隔开

      --iterations   运行多少次后,得到结果;

      --auto-generate-sql  自动生成SQL脚本来测试;

      --auto-generate-sql-load-type  测试类型是read还是write,还是mixed;(可以使用--only-print 查看到底是哪些SQL语句)

      --number-of-queries 执行查询的次数,

      --debug-info  输出CPU、内存等系统相关信息

      --number-int-cols  测试表int字段类型的数量;

      --auto-generate-sql-add-autoincrement  对生成的测试表 自动生成含有auto_increment属性的列;

      --number-char-cols  测试表的char类型字段的数量;

      --create-schema = db  创建测试的数据库;

      --query 使用自定义脚本进行测试, 可以是一个存储过程或者SQL语句来执行;

      --only-print  只打印测试过程中涉及到的SQL语句,不真正的执行;

  举例:

  测试200个并发写入性能,测试20次,自动生成SQL脚本,测试表包含35个int字段,20个char字段,测试引擎分别为innodb,myisam;每次执行3000个query;

 

1
. /bin/mysqlslap  --socket= /usr/local/mysql/mysql .sock --port=3306 --concurrency=200  --iterations=20 --auto-generate-sql --auto-generate-sql-load- type =write  --auto-generate-sql-add-autoincrement --number-int-cols=35 --number-char-cols=20  --engine=innodb,myisam   --create-schema=sysbench  --number-of-queries=3000 --debug-info


        结果为:

       

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Benchmark
         Running  for  engine innodb
         Average number of seconds to run all queries: 6.385 seconds
         Minimum number of seconds to run all queries: 3.021 seconds
         Maximum number of seconds to run all queries: 12.969 seconds
         Number of clients running queries: 200
         Average number of queries per client: 15
Benchmark
         Running  for  engine myisam
         Average number of seconds to run all queries: 0.621 seconds
         Minimum number of seconds to run all queries: 0.442 seconds
         Maximum number of seconds to run all queries: 1.134 seconds
         Number of clients running queries: 200
         Average number of queries per client: 15
User  time  0.66, System  time  1.97
Maximum resident  set  size 10060, Integral resident  set  size 0
Non-physical pagefaults 50486, Physical pagefaults 5, Swaps 0
Blocks  in  584 out 96, Messages  in  0 out 0, Signals 0
Voluntary context switches 298373, Involuntary context switches 1469


自定义SQL测试脚本:

 

1
mysqlslap --create= /yourpath/test .sql --query= /yourpath/test1 .sql --concurrency=50,100,200 --iterations=20 --engine=myisam,innodb






本文转自 位鹏飞 51CTO博客,原文链接:http://blog.51cto.com/weipengfei/1249295,如需转载请自行联系原作者
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
18
分享
相关文章
Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
【9月更文挑战第1天】Canal作为一款高效、可靠的数据同步工具,凭借其基于MySQL binlog的增量同步机制,在数据同步领域展现了强大的应用价值
1188 4
MySQL 窗口函数详解:分析性查询的强大工具
MySQL 窗口函数从 8.0 版本开始支持,提供了一种灵活的方式处理 SQL 查询中的数据。无需分组即可对行集进行分析,常用于计算排名、累计和、移动平均值等。基本语法包括 `function_name([arguments]) OVER ([PARTITION BY columns] [ORDER BY columns] [frame_clause])`,常见函数有 `ROW_NUMBER()`, `RANK()`, `DENSE_RANK()`, `SUM()`, `AVG()` 等。窗口框架定义了计算聚合值时应包含的行。适用于复杂数据操作和分析报告。
225 11
【赵渝强老师】MySQL的基准测试与sysbench
本文介绍了MySQL数据库的基准测试及其重要性,并详细讲解了如何使用sysbench工具进行测试。内容涵盖sysbench的安装、基本使用方法,以及具体测试MySQL数据库的步骤,包括创建测试数据库、准备测试数据、执行测试和清理测试数据。通过这些步骤,可以帮助读者掌握如何有效地评估MySQL数据库的性能。
205 5
MySQL高级篇——性能分析工具
MySQL的慢查询日志,用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long-query_time值的SQL,则会被记录到慢查询日志中。long_query_time的默认值为 10,意思是运行10秒以上(不含10秒)的语句,认为是超出了我们的最大忍耐时间值。它的主要作用是,帮助我们发现那些执行时间特别长的 SOL 查询,并且有针对性地进行优化,从而提高系统的整体效率。当我们的数据库服务器发生阻塞、运行变慢的时候,检查一下慢查询日志,找到那些慢查询,对解决问题很有帮助。
MySQL高级篇——性能分析工具
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
Hadoop-21 Sqoop 数据迁移工具 简介与环境配置 云服务器 ETL工具 MySQL与Hive数据互相迁移 导入导出
186 3
Navicat工具设置MySQL权限的操作指南
通过上述步骤,您可以使用Navicat有效地为MySQL数据库设置和管理用户权限,确保数据库的安全性和高效管理。这个过程简化了数据库权限管理,使其既直观又易于操作。
745 4
推荐一款高颜值的MySQL管理工具:Sequel Pro
推荐一款高颜值的MySQL管理工具:Sequel Pro
149 9

热门文章

最新文章