10、MySQL 8.0参考手册 4.5.9 mysqlslap - 加载仿真客户端

mysqlslap是一个诊断程序,旨在模拟MySQL服务器的客户端负载并报告每个阶段的时间。它就像多个客户端正在访问服务器一样工作。

像这样 调用mysqlslap

shell> mysqlslap [options]

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

mysqlslap运行分三个阶段:

  1. 创建模式,表格以及可选的任何存储程序或数据以用于测试。该阶段使用单个客户端连接。

  2. 运行负载测试。这个阶段可以使用许多客户端连接。

  3. 清理(​​如果指定,断开连接,删除表)。该阶段使用单个客户端连接。

例子:

提供自己的创建和查询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支持下面的选项,可以在命令行或在指定 [mysqlslap][client] 一个选项文件的组。有关MySQL程序使用的选项文件的信息,请参见第4.2.6节“使用选项文件”

表4.16 mysqlslap选项

格式描述介绍删除
--auto-产生-SQL如果没有在文件中提供或使用命令选项,则会自动生成SQL语句  
--auto-产生-SQL插件自动增量将AUTO_INCREMENT列添加到自动生成的表格  
--auto-生成-SQL执行数指定自动生成多少个查询  
--auto-生成-SQL-GUID-主将基于GUID的主键添加到自动生成的表中  
--auto-生成-SQL负载型指定测试负载类型  
--auto-生成-SQL二次索引指定添加到自动生成的表格的次数索引  
--auto-产生-SQL唯一查询号码为自动测试生成多少个不同的查询。  
--auto-产生-SQL唯一写入数为--auto-generate-sql-write-number生成多少个不同的查询  
--auto-产生-SQL写号在每个线程上执行多少行插入  
- 承诺在提交之前要执行多少个语句。  
- 压缩压缩客户端和服务器之间发送的所有信息  
--concurrency发出SELECT语句时要模拟的客户端数量  
- 创建包含用于创建表的语句的文件或字符串  
--create-模式运行测试的模式  
--csv以逗号分隔值格式生成输出  
--debug编写调试日志  
--debug检查程序退出时打印调试信息  
- 调试信息打印程序退出时的调试信息,内存和CPU统计信息  
--default-AUTH身份验证插件使用  
--defaults-额外文件除了通常的选项文件外,还可以读取已命名的选项  
--defaults文件只读取命名的选项文件  
--defaults基团的后缀选项组后缀值  
对齐和美化--delimiter在SQL语句中使用分隔符  
- 分离在每个N语句后分离(关闭并重新打开)每个连接  
--enable-明文-插件启用明文身份验证插件  
- 发动机用于创建表的存储引擎  
--get-服务器的公钥从服务器请求RSA公钥8.0.3 
- 帮帮我显示帮助信息并退出  
- 主办连接到给定主机上的MySQL服务器  
--iterations运行测试的次数  
--login路径阅读.mylogin.cnf中的登录路径选项  
--no-默认不读取任何选项文件  
- 没有下降不要删除在测试运行期间创建的任何模式  
--number-char型的cols指定了--auto-generate-sql时要使用的VARCHAR列的数量  
--number-INT-的cols指定了--auto-generate-sql时要使用的INT列数  
--number-的查询将每个客户端限制为大约这个数量的查询  
--only打印不要连接到数据库。mysqlslap只打印它会做的事情  
- 密码连接到服务器时使用的密码  
- 管在Windows上,使用命名管道连接到服务器  
--plugin-DIR安装插件的目录  
- 港口用于连接的TCP / IP端口号  
--post查询包含要在测试完成后执行的语句的文件或字符串  
--post系统测试完成后使用system()执行的字符串  
- 事先查询包含要在运行测试之前执行的语句的文件或字符串  
- 事先系统在运行测试之前使用system()执行的字符串  
--print-默认打印默认选项  
- 协议使用连接协议  
--query包含用于检索数据的SELECT语句的文件或字符串  
--secure-auth的不要以旧(4.1以前)格式向服务器发送密码 8.0.3
--server-公钥路径包含RSA公钥的文件的路径名称8.0.4 
--shared存储器碱基名用于共享内存连接的共享内存的名称  
- 无声静音模式  
- 插座用于连接到localhost,要使用的Unix套接字文件  
--sql模式为客户端会话设置SQL模式  
--ssl-CA包含可信SSL证书颁发机构列表的文件  
--ssl-capath包含可信SSL证书颁发机构证书文件的目录  
--ssl证书包含X509证书的文件  
--ssl-密码允许连接加密的密码列表  
--ssl-CRL包含证书吊销列表的文件  
--ssl-crlpath包含证书撤销列表文件的目录  
--ssl键包含X509密钥的文件  
--ssl模式连接到服务器的安全状态  
--tls版本允许加密连接的协议  
- 用户连接到服务器时使用的MySQL用户名  
--verbose详细模式  
- 版显示版本信息并退出  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值