10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 41.6 mb
PDF (A4)- 41.7 mb
手册页(TGZ)- 262.1 kb
手册页(邮政编码)- 372.1 kb
信息(Gzip)- 4.0 mb
信息(邮政编码)- 4.0 mb
本手册节选

MySQL 8.0参考手册/.../ 一个加载仿真客户端

4.5.8 mysqlslap—加载仿真客户端

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

调用mysqlslap是这样的:

mysqlslap [选项

一些选项,例如——创建——查询使您能够指定包含SQL语句的字符串或包含语句的文件。如果指定一个文件,默认情况下,它每行必须包含一条语句。(也就是说,隐式语句分隔符是换行符。)使用——分隔符选项指定不同的分隔符,该选项使您能够指定跨越多行或将多个语句放在单行上的语句。不能在文件中包含注释;mysqlslap不理解他们。

mysqlslap运行分为三个阶段:

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

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

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

例子:

提供自己的创建和查询SQL语句,有50个客户端查询和200个选择(在单行输入命令):

mysqlslap——分隔符=”;“——create=" create TABLE a (b int);INSERT INTO a VALUES (23)"——query="SELECT * FROM a"——并发=50——迭代=200

mysqlslap使用两个表构建查询SQL语句INT列和三个VARCHAR列。使用5个客户机每个客户机查询20次。不要创建表或插入数据(也就是说,使用前面测试的模式和数据):

Mysqlslap——并发=5——迭代=20——number-int-cols=2——number-char-cols=3——自动生成sql

命令程序从指定的文件加载创建、插入和查询SQL语句create.sql文件有多个表创建语句,用“;”和由分隔的多个插入语句“;”.的——查询文件应该包含多个以。分隔的查询“;”.运行所有的load语句,然后使用5个客户机(每个客户机5次)运行查询文件中的所有查询:

Mysqlslap——并发=5——迭代=5——查询=查询。sql——创建=创建。sql——分隔符=”;“

mysqlslap支持以下选项,这些选项可以在命令行或(mysqlslap)而且(客户端)选项文件的分组。有关MySQL程序使用的选项文件的信息,请参见第4.2.2.2节“使用选项文件”

表4.18 mysqlslap选项

选项名称 描述 介绍了 弃用
——auto-generate-sql 当文件中没有提供SQL语句或使用命令选项时,自动生成SQL语句
——auto-generate-sql-add-autoincrement 向自动生成的表中添加AUTO_INCREMENT列
——auto-generate-sql-execute-number 指定自动生成的查询的数量
——auto-generate-sql-guid-primary 为自动生成的表添加一个基于gui的主键
——auto-generate-sql-load-type 指定测试负载类型
——auto-generate-sql-secondary-indexes 指定要向自动生成的表添加多少次索引
——auto-generate-sql-unique-query-number 为自动测试生成多少不同的查询
——auto-generate-sql-unique-write-number 要为——auto-generate-sql-write-number生成多少不同的查询
——auto-generate-sql-write-number 每个线程上要执行多少行插入
——提交 在提交之前要执行多少条语句
——压缩 压缩客户端和服务器之间发送的所有信息 8.0.18
——压缩算法 允许对连接到服务器的压缩算法 8.0.18
——并发 在发出SELECT语句时要模拟的客户机数量
——创建 包含用于创建表的语句的文件或字符串
——建立图表 运行测试的模式
——csv 以逗号分隔值格式生成输出
——调试 编写调试日志
——debug-check 当程序退出时打印调试信息
——debug-info 当程序退出时打印调试信息、内存和CPU统计信息
——default-auth 要使用的身份验证插件
——defaults-extra-file 除了通常的选项文件外,还读取指定的选项文件
——defaults-file 只读命名选项文件
——defaults-group-suffix 选项组后缀值
——分隔符 要在SQL语句中使用的分隔符
——分离 在每N条语句之后分离(关闭并重新打开)每个连接
——enable-cleartext-plugin 启用明文认证插件
——引擎 用于创建表的存储引擎
——get-server-public-key 从服务器请求RSA公钥
——帮助 显示帮助信息并退出
——主机 MySQL服务器所在的主机
——迭代 运行测试的次数
——登录路径 从.mylogin.cnf读取登录路径选项
——已 读取无选项文件
——非放 不删除测试运行期间创建的任何模式
——number-char-cols 如果指定了——auto-generate-sql,则使用的VARCHAR列的数量
——number-int-cols 如果指定了——auto-generate-sql,要使用的INT列的数量
——查询数量的 将每个客户机的查询数量限制在这个范围内
——只留下冷冰冰的 禁止连接数据库。Mysqlslap只打印它本来要做的事情
——密码 连接到服务器时使用的密码
——管 使用命名管道连接到服务器(仅适用于Windows)
——plugin-dir 安装插件的目录
——港口 TCP/IP连接端口号
——post查询 包含要在测试完成后执行的语句的文件或字符串
——上岗制度 字符串,在测试完成后使用system()执行
——pre-query 包含要在运行测试之前执行的语句的文件或字符串
——pre-system 字符串,在运行测试之前使用system()执行
——print-defaults 打印默认选项
——协议 要使用的传输协议
——查询 包含用于检索数据的SELECT语句的文件或字符串
——server-public-key-path 包含RSA公钥文件的路径名称
——shared-memory-base-name 共享内存连接的共享内存名称(仅限Windows)
——沉默 静默模式
——套接字 Unix套接字文件或Windows命名管道使用
——sql模式 设置客户端会话的SQL模式
——ssl-ca 包含受信任的SSL证书颁发机构列表的文件
——ssl-capath 包含受信任的SSL证书颁发机构证书文件的目录
——ssl-cert 包含X.509证书的文件
——ssl cipher 用于连接加密的允许密码
——ssl-crl 包含证书撤销列表的文件
——ssl-crlpath 包含证书撤销列表文件的目录
——ssl-fips-mode 客户端是否开启FIPS模式
——ssl密钥 包含X.509密钥的文件
——ssl-mode 到服务器的连接所需的安全状态
——tls-ciphersuites 用于加密连接的允许TLSv1.3加密套件 8.0.16
——tls版本 加密连接允许的TLS协议
——用户 连接到服务器时使用的MySQL用户名
——详细 详细模式
——版本 显示版本信息并退出
——zstd-compression-level 连接到使用zstd压缩的服务器的压缩级别 8.0.18