Mysql自带mysqlslap性能测试工具的使用及参数说明

mysqlslap是MySQL自带的诊断工具,用于模拟多客户端负载并报告性能。它通过创建架构、运行负载测试和清理来运行。程序提供自动生成SQL语句的能力,并允许指定创建、查询SQL文件。用户可通过设置并发数、查询数量等参数进行性能测试。此外,还介绍了如何使用特定选项如--auto-generate-sql、--concurrency和--query等进行定制化测试。
摘要由CSDN通过智能技术生成

简介

mysqlslap是一个诊断程序,旨在模拟MySQL服务器的客户端负载并报告每个阶段的时间。它就像多个客户端正在访问服务器一样工作。
像这样 调用mysqlslap(windows下调用powershell或者cmd窗口,linux直接运行命令即可):

shell> mysqlslap [options]

  • 一些选项,例如–create 或–query使您能够指定包含SQL语句的字符串或包含语句的文件。
    • 如果指定文件,则默认情况下该文件每行必须包含一个语句。(也就是说,隐式语句定界符是换行符。)使用该 --delimiter选项可以指定其他定界符,这使您可以指定跨越多行的语句或将多条语句放在一行上。您不能在文件中包含注释; mysqlslap无法理解它们。

mysqlslap分三个阶段运行:

  • 创建架构,表以及可选的任何存储程序或数据以用于测试。此阶段使用单个客户端连接。

  • 运行负载测试。此阶段可以使用许多客户端连接。

  • 清理(​​断开连接,如果指定的话,删除表)。此阶段使用单个客户端连接。

一.实例说明

例子:
提供您自己的create和query SQL语句,其中包含50个客户端查询和200个选择(在一行中输入命令):

mysqlslap --delimiter=";"
  --create="CREATE TABLE a (b int);INSERT INTO a VALUES (23)"
  --query="SELECT * FROM a" --concurrency=50 --iterations=200

让mysqlslap用两INT列和三VARCHAR列的表构建查询SQL语句。使用五个客户端,每个客户端查询20次。不要创建表或插入数据(即,使用先前测试的架构和数据):

mysqlslap --concurrency=5 --iterations=20
  --number-int-cols=2 --number-char-cols=3
  --auto-generate-sql

告诉程序从指定的文件加载创建,插入和查询SQL语句,其中该 create.sql文件包含多个以分隔的表创建语句’;‘和多个以分隔的插入语句’;’。该 --query文件将包含多个以分隔的查询’;’。运行所有装入语句,然后使用五个客户端(每个客户端五次)运行查询文件中的所有查询:

mysqlslap --concurrency=5
  --iterations=5 --query=query.sql --create=create.sql
  --delimiter=";"

二.参数说明

mysqlslap选项

选项名称 描述 版本起止
- -auto-generate-sql 命令选项未提供或未使用文件时自动生成SQL语句
- -auto-generate-sql-add-autoincrement 在自动生成的表中增加自增列
- -auto-generate-sql-execute-number 指定自动生成多少个查询
- -auto-generate-sql-guid-primary 将基于GUID的主键添加到自动生成的表中
- -auto-generate-sql-load-type 指定测试负载类型
- -auto-generate-sql-secondary-indexes 指定要添加到自动生成的表中的二级索引的数量
- -auto-generate-sql-unique-query-number 为自动测试生成多少
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值