拓扑园

  • O&M
    • Universal部署
    • PHP+VUE+Laravel相关
  • Oracle性能优化
  • Oracle项目案例
    • Oracle近期项目案例(目录)
    • Oracle实战问题解析(目录)
    • Oracle数据库名变更流程(2种方式)
    • Oracle数据库目录更换流程(使用Oracle的clone工具)
    • Oracle数据库迁移方案(目录)
    • 标准化文档系列
  • Oracle基础知识
    • LLL的Oracle培训(分类)
    • LLL的docker培训(分类)
    • 标准化文档系列--(分类)
    • Oracle核心经典分析(分类)
    • 图灵小队----(分类并包含以下文章)
    • --MySQL8.0/Oracle/Memcached/Redis等安装配置于RHEL/OL6/7/8.X系列-运行环境最优配置
    • --PG安装配置于RHEL/9X系列-运行环境最优配置
    • --自动维护任务详解-开启、关闭信息统计收集(统计信息)
    • --图灵小队—Oracle/PostgreSQL下创建一个用户测试表(自行定义数据行)
    • --图灵小队-Oracle存储过程导出表的明细_UTL_FILE(文章)
    • --图灵小队-Oracle数据库删除/卸载操作指南(文章)
    • --图灵小队-Oracle常用性能查询SQL语句(文章)
    • --图灵小队-Oracle数据库上线前检查(文章)
    • --图灵小队-Oracle常用SQL语句(文章)
    • --图灵小队—Linux/Oracle脚本/MySQL合集(持续更新)
    • --图灵小队-Oracle技巧记录(文章)
    • ADG
    • RAC
    • ASM
    • OGG
    • RMAN
    • EXPDP/IMPDP
    • 工厂数据导入导出系列
  • MySQL
    • MySQL数据库规范
    • MySQL项目案例
    • MySQL安装配置
    • MYSQL集群项目
    • MySQL常见处理
    • MySQL-Sysbench专题
    • MySQL-Percona Toolkit专题
  • Linux
    • Shell编程
    • kubernetes
    • docker
    • Linux
    • PHP
    • Nginx
    • haproxy
    • mail
    • 网站
    • 域名
    • 网址收藏
  • 数据中心
    • 新框架系统集合
    • 工作文档
    • EBS数据文件扩容
    • VMware虚拟化
    • EBS系列
    • 大数据
    • SVN
    • zabbix
    • SAP
    • 备份相关
    • FC交换机
    • SVN
  • K-Studing
    • D8-Python学习
    • Oracle/MySQl等面试题
    • LG-MySQL
    • LG-Docker/K8S
    • LG-PostgreSQL
    • LG-ORACLE_BBED
    • LG-ORACLE
    • LG-Elasticsearch(ES)+ELK
    • Oracle-19C-OCP
    • WERN_ORACLE培训
    • redis数据库
    • Nginx培训学习系列
  • 其他
    • 外研英语4年级下册-听力
    • 影视系列
    • 如何使用iTunes软件通过抓包下载旧版本的ios的app
天高任鸟飞
Oracle/MySQL数据库恢复/数据迁移/生产规范报告技术交流:TEL:18562510581(微信同号);加微信入群
  1. 首页
  2. MySQL
  3. MySQL-Sysbench专题
  4. 正文

MySQL数据库性能基准测试之sysbench之3—sysbench相关参数

2024年3月21日 1224点热度 0人点赞 0条评论

目录

  • 一、参数设置
    • 1、sysbench功能测试参数
    • 2、通用参数
    • 3、日志参数
    • 4、通用数据库参数
    • 参数
    • 5、MySQL相关参数
    • 6、fileio相关参数
    • 参数
    • 7、cpu相关参数
    • 8、memory相关参数
    • 9、threads相关参数
    • 10、mutex相关参数
    • 11.oltp测试
  • 二、测试

MySQL数据库性能基准测试之sysbench之3—sysbench相关参数

一、参数设置

1、sysbench功能测试参数

fileio   磁盘IO测试。
cpu      CPU性能测试。
memory   内存分配及传输速度测试。
threads  线程性能测试。
mutex    互斥性能测试。
oltp     oltp测试

2、通用参数

–-num-threads=N                 使用的线程数量,默认值为1。
–-max-requests=N                总请求数,与--max-time选择一个设置即可,默认值为10000。
–-max-time=N                    总执行时间,与--max-requests选择一个设置即可,单位为s,默认值为0。
–-forced-shutdown=STRING        超过--max-time后强制t中断,默认为off。
–-thread-stack-size=SIZE        每个线程的stack大小,默认为64K。
–-tx-rate=N                     sysbench尝试像数据库发送的事务数tps。
–-report-interval=N             表示N秒输出一次测试进度报告,0表示关闭测试进度报告输出,仅输出最终的报告结果,默认值为0。
–-report-checkpoints=[LIST,…]   dump full statistics and reset all counters at specified points in time. 
                                The argument is a list of comma-separated values representing the amount of time in seconds elapsed from start of test when report checkpoint(s) must be performed. Report checkpoints are off by default. []
–-test=STRING                   测试类型,可选项:fileio/cpu/memory/threads/mutex/oltp脚本路径。
–-debug=[on|off]                debug模式输出,默认值为off。
–-validate=[on|off]             在可能的情况下执行验证检查,默认为off。
–-help=[on|off]                 输出help信息,默认为off。
–-version=[on|off]              输出版本信息,默认为off。
–-rand-type=STRING              表示随机类型的模式,共有4种模式:uniform(固定),gaussian(高斯),special(特定),pareto(帕雷特),默认值为:special。
–-rand-spec-iter number of iterations used for numbers generation [12]
–-rand-spec-pct=N              对于’special’随机模式中指定值的比例,默认值为75。
–-rand-seed=N seed for random number generator, ignored when 0 [0]
–-rand-pareto-h=N parameter h for pareto distibution [0.2]–-config-file sysbench配置文件路径。

3、日志参数

–-verbosity=N       初测试报告信息之外的信息输出级别,5为debug信息,0位仅仅输出严重信息,默认值为3。
–-percentile=N      查询相应时间采样的百分比,默认值为95%。

4、通用数据库参数

参数

–-db-driver=STRING     特殊的数据库驱动。
–-db-ps-mode=STRING    SQL是否需要预编译,模式有:auto/disable,默认为disable。
–-db-debug=[on|off]    输出数据库层面的debug信息,默认为off。

5、MySQL相关参数

–-mysql-host=[LIST,…]            MySQL服务器IP/hostname,默认:localhost。
–-mysql-port=[LIST,…]            MySQL端口号,默认:3306。
–-mysql-socket=[LIST,…]          MySQL的socket文件。
–-mysql-user=STRING              MySQL的用户名,默认:sbtest
–-mysql-password=STRING          MySQL用户密码。
–-mysql-db=STRING                MySQL数据库。
–-mysql-table-engine=STRING      用户测试表的表结构引擎,可选项:myisam/innodb/bdb/heap/ndbcluster/federated,默认值:innodb。
–-mysql-engine-trx=STRING        存储引擎是否使用事务,可选项:yes,no,auto,默认值:auto。
–-mysql-ssl=[on|off]             使用SSL连接,默认值:off。
–-mysql-ssl-cipher=STRING        为SSL连接指定密码。
–-mysql-compression=[on|off]     使用压缩,默认值:off。
–-myisam-max-rows=N              MyISAM表的最大记录数,默认值:1000000。
–-mysql-debug=[on|off]           输出MySQL的debug信息,默认值:off。
--mysql-ignore-errors=[LIST,…]   MySQL忽略的错误代码,可选项:1213/1020/1205
–-mysql-dry-run=[on|off]         假装MySQL所有客户端API都被调用,但实际并不执行它们,默认值:off

6、fileio相关参数

参数

  sysbench --test=fileio help
–-file-num=N               创建文件的数量,默认值:128。
–-file-block-size=N        每次IO操作的block大小,默认值:16K。
–-file-total-size=SIZE     所有文件大小总和,默认值:2G。
–-file-test-mode=STRING    测试模式:seqwr(顺序写), seqrewr(顺序读写), seqrd(顺序读), rndrd(随机读), rndwr(随机写), rndrw(随机读写)。
–-file-io-mode             文件操作模式:sync(同步),async(异步),mmap(快速map映射),默认值:sync。
–-file-async-backlog number of asynchronous operatons to queue per thread [128]。
–-file-extra-flags=STRING   使用额外的标志符来打开文件{sync,dsync,direct}。
–-file-fsync-freq=N         在完成N次请求之后,执行fsync(),0表示不使用fsync,默认值:100。
–-file-fsync-all=[on|off]   每次写操作后执行fsync(),默认值:off。
–-file-fsync-end=[on|off]   测试结束后执行fsync(),默认值:on。
–-file-fsync-mode=STRING    使用fsync或fdatasync方法进行同步,默认值:fsync。
–-file-merged-requests=N    尽可能的合并N个IO请求数,0表示不合并,默认值:0。
–-file-rw-ratio=N           测试时候的读写比例,默认值:1.5(即3:2)。

7、cpu相关参数

sysbench --test=cpu help

–-cpu-max-prime=N 最大质数生成器的上限,默认值:10000。

8、memory相关参数

sysbench --test=memory help

--memory-block-size=SIZE     测试时内存块大小,默认值:1K。
–-memory-total-size=SIZE     传输数据可使用的最大内存大小,默认值:100G。
–-memory-scope=STRING        内存访问范围:global/local,默认值:global。
–-memory-hugetlb=[on|off     从HugeTLB池分配内存,默认值:off。
–-memory-oper=STRING         内存操作类型:read/ write/none,默认值:write。
–-memory-access-mode=STRING   内存访问方式:seq(顺序)/rnd(随机),默认值:seq。

9、threads相关参数

sysbench --test=threads help

–-thread-yields=N 每个请求产生多少线程,默认值:1000。
–-hread-locks=N 每个线程的锁的数量,默认值:8。

10、mutex相关参数

sysbench --test=mutex help

-–mutex-num=N 数组互斥的总大小,默认值:4096。
-–mutex-locks=N 每个线程互斥锁的数量,默认值:50000。
-–mutex-loops=N 内部互斥锁的空循环数量,默认值:10000

11.oltp测试

sysbench --test=oltp help

--oltp-test-mode=STRING             测试类型:simple(简单select测试),complex(事务测试),nontrx(非事务测试),sp(存储过程) ;默认complex
--oltp-reconnect-mode=STRING        连接类型:session(每个线程到测试结束不重新连接),transaction(执行每个事务重新连接),query(每一个查询重新连接),random(随机);默认 [session]
--oltp-sp-name=STRING               指定执行测试的存储过程名
--oltp-read-only=[on|off]           仅执行select测试,默认关闭
--oltp-avoid-deadlocks=[on|off]     更新过程中忽略死锁,默认[off]
--oltp-skip-trx=[on|off]            语句以bigin/commit开始结尾,默认[off]
--oltp-range-size=N                 范围查询的范围大小,默认 [100],例如begin 100 and 200
--oltp-point-selects=N              单个事务中select查询的数量,默认 [10]
--oltp-use-in-statement=N           每个查询中主键查找(in 10个值)的数量,默认 [0]
--oltp-simple-ranges=N              单个事务中执行范围查询的数量(SELECT c  FROM sbtest WHERE id BETWEEN  N AND  M),默认[1]
--oltp-sum-ranges=N                 单个事务中执行范围sum查询的数量,默认 [1]
--oltp-order-ranges=N               单个事务中执行范围order by查询的数量,默认[1]
--oltp-distinct-ranges=N            单个事务中执行范围distinct查询的数量,默认[1]
--oltp-index-updates=N              单个事务中执行索引更新的操作的数量,默认[1]
--oltp-non-index-updates=N          单个事务中执行非索引更新操作的数量,默认[1]
--oltp-nontrx-mode=STRING           指定单独非事务测试类型进行测试,默认select {select, update_key, update_nokey, insert, delete} [select]
--oltp-auto-inc=[on|off]            id列默认自增,默认[on]
--oltp-connect-delay=N              指定每一次重新连接延时的时长,默认1秒 [10000]
--oltp-user-delay-min=N             minimum time in microseconds to sleep after each request [0]
--oltp-user-delay-max=N             maximum time in microseconds to sleep after each request [0]
--oltp-table-name=STRING            指定测试的表名,默认[sbtest]
--oltp-table-size=N                 指定表的记录大小,默认[10000]
--oltp-dist-type=STRING             随机数分布状态。uniform(均匀分布)、gauss(高斯分布)、special(特殊分布),默认 [special]
--oltp-dist-iter=N                  number of iterations used for numbers generation [12]
--oltp-dist-pct=N                   启用百分比特殊分布,默认 [1]
--oltp-dist-res=N                   special 百分比[75]
--oltp-point-select-mysql-handler=[on|off] Use MySQL HANDLER for point select [off]
--oltp-point-select-all-cols=[on|off]     select查询测试时select所有列,默认[off]
--oltp-secondary=[on|off]                 索引不是主键索引而是二级索引,默认[off]
--oltp-num-partitions=N                   指定表分区的数量,默认 [0]
--oltp-num-tables=N                       指定测试表的数量,默认[1]

二、测试

# 指定了最大的质数发生器数量为 20000
sysbench --test=cpu --cpu-max-prime=20000 run

# 发送64次/个测试线程请求,每次/个线程请求产生/生成100个数量,每个线程的锁数量为2
sysbench --test=threads --num-threads=64 --thread-yields=100 --thread-locks=2 run

# 进行磁盘IO测试,指定了最大创建16个线程,创建的文件总大小为3G,文件读写模式为随机读
sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw prepare
sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw run
sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw cleanup

# 指定了本次测试整个过程是在内存中传输 4G 的数据量,每个 block 大小为 8K
sysbench --test=memory --memory-block-size=8k --memory-total-size=4G run

# 事务测试,测试12个线程执行1万条请求,10个表,每个表大小100W
sysbench --num-threads=12 --max-requests=100000  --test=oltp --mysql-user=root --mysql-password=root --oltp-test-mode=complex --mysql-db=sbtest --oltp-table-size=1000000 --oltp-num-tables=10 prepare
sysbench --num-threads=12 --max-requests=100000  --test=oltp --mysql-user=root --mysql-password=root --oltp-test-mode=complex --mysql-db=sbtest --oltp-table-size=1000000 --oltp-num-tables=10 run
sysbench --num-threads=12 --max-requests=100000  --test=oltp --mysql-user=root --mysql-password=root --oltp-test-mode=complex --mysql-db=sbtest --oltp-table-size=1000000 --oltp-num-tables=10 cleanup
本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2024年3月23日

admin

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

COPYRIGHT © 2022 拓扑园. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鲁ICP备2021020523号

鲁ICP备2021020523号