【Mysql】硬盘性能压测(Sysbench工具)

1、IOPS和吞吐量介绍

  • IOPS(每秒输入/输出操作数):是衡量存储设备每秒能够执行的输入/输出操作的数量。对于数据库等需要频繁读写的应用程序而言,IOPS 是一个关键的性能指标。更高的 IOPS 意味着存储设备能够处理更多的读写请求,因此能够更快地响应应用程序的需求。

  • 吞吐量:指存储系统在一定时间内能够传输的数据量。它通常以每秒传输的数据量(比特/字节)来衡量。吞吐量取决于存储系统的带宽和响应时间。较高的吞吐量表示存储系统能够以更快的速度传输数据。

       在数据库系统中,IOPS 和吞吐量都是非常关键的性能指标。数据库的读写操作会对存储系统的 IOPS 和吞吐量产生影响,因此优化存储性能对于提升数据库性能至关重要。

2、Sysbench工具简介

        Sysbench 是一个可编写脚本的多线程基准测试工具,基于 LuaJIT的。它最常用于数据库基准测试,但也用于创建不涉及数据库服务器。它可以测试 CPU、内存、文件系统和数据库等方面的性能,并提供了多种测试模式和参数配置选项。

sysbench 的一些常见用途包括:

  1. 数据库性能测试:sysbench 可以模拟多个用户同时访问数据库,并测量数据库处理能力、响应时间等指标。

  2. CPU 和内存性能测试:sysbench 可以执行计算密集型任务和内存操作,并评估系统的计算和内存性能。

  3. 文件系统性能测试:sysbench 可以模拟文件读写操作,测试文件系统的性能和吞吐量。

  4. 线程调度性能测试:sysbench 可以模拟多线程并发执行,评估系统的线程调度性能。

3、Sysbench安装

下载地址:

Release Release 1.0.20 · akopytov/sysbench · GitHub

[root@dt1 sysbench]# tar -xzvf sysbench-1.0.20.tar.gz
[root@dt1 sysbench]# cd sysbench-1.0.20
[root@dt1 sysbench-1.0.20]# yum install m4 autoconf automake libtool mysql-devel -y
[root@dt1 sysbench-1.0.20]# ./autogen.sh
[root@dt1 sysbench-1.0.20]# ./configure
[root@dt1 sysbench-1.0.20]# make && make install
[root@dt1 sysbench-1.0.20]# sysbench --version

4、磁盘压测

#创建一个测试目录
[root@dt1 sysbench-1.0.20]# mkdir ../test
[root@dt1 sysbench-1.0.20]# cd ../test/

#创建4个文件,总共大小4G,一个块大小为16k
[root@dt1 test]# sysbench --test=fileio --file-num=4 --file-block-size=16384 --file-total-size=4g prepare
#用于运行文件 I/O 的基准测试
[root@dt1 test]# sysbench --test=fileio --file-num=4 --file-block-size=16384 --file-total-size=4G --file-test-mode=rndrw --file-extra-flags=direct --max-time=10 --max-requests=0 --file-fsync-freq=1 --num-threads=128 --report-interval=1 run

#清理创建的文件
[root@dt1 test]# sysbench --test=fileio --file-num=4 --file-block-size=16384 --file-total-size=4g cleanup

命令参数解释

1、sysbench --test=fileio --file-num=4 --file-block-size=16384 --file-total-size=4g prepare

  • --test=fileio:指定进行文件 I/O 方面的基准测试。
  • --file-num=4:设置要使用的文件数量为 4 个。
  • --file-block-size=16384:设置每个文件的块大小为 16KB。
  • --file-total-size=4g:设置所有文件的总大小为 4GB。
  • prepare:执行准备阶段,创建并初始化测试所需的文件

2、sysbench --test=fileio --file-num=4 --file-block-size=16384 --file-total-size=4G --file-test-mode=rndrw --file-extra-flags=direct --max-time=10 --max-requests=0 --file-fsync-freq=1 --num-threads=128 --report-interval=1 run

  • --test=fileio:指定进行文件 I/O 方面的基准测试。
  • --file-num=4:设置要使用的文件数量为 4 个。
  • --file-block-size=16384:设置每个文件的块大小为 16KB。
  • --file-total-size=4G:设置所有文件的总大小为 4GB。
  • --file-test-mode=rndrw:设置文件操作的模式为随机读写(random read-write)。
  • --file-extra-flags=direct:使用直接 I/O 操作而不是缓存。
  • --max-time=10:设置最长运行时间为 10 秒。
  • --max-requests=0:设置每个线程执行的请求数目,0 表示无限制。
  • --file-fsync-freq=1:设置 fsync 操作的频率为每次操作都执行。
  • --num-threads=128:设置线程数为 128。
  • --report-interval=1:设置报告输出的时间间隔为 1 秒

 --file-test-mode 指定 sysbench 运行的工作负载类型,类型如下:

        seqwr:顺序写入
        seqrewr:顺序重写
        seqrd:顺序读取
        rndrd:随机读取
        rndwr:随机写入
        rndrw:随机读取/写入

MySQL 是一种数据库管理系统,它通常涉及随机读写而不是顺序读写,所以采用随机的类型

 结果如下:

跟其他机器对比

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/484385.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

css盒子模型及浮动

内容(content)、内边距(padding)、边框(border)、外边距(margin) oder:1px solid red; 边框的粗细 边框的样式(虚线还是实线) 边框的颜色 border中也有一些属性可以直接调某一个方向上的边框的粗细,样式,颜色 border-left\bord…

24计算机考研调剂 | 【官方】中国航天系统科学与工程研究院

中国航天系统科学与工程研究院2024年硕士研究生招生预调剂通知 调剂招生信息 研究院概况与专业特色: 中国航天系统科学与工程研究院(简称:十二院)是中国航天科技集团有限公司的直属单位,是在原中国航天工程咨询中心 …

【软考】UML中的图之状态图

目录 1. 说明2. 图示 1. 说明 1.状态图(State Diagram)展现了一个状态机。2.由状态、转换、事件和活动组成。3.关注系统的动态视图。4.对于接口、类和协作的行为建模尤为重要。5.强调对象行为的事件顺序。6.通常包括简单状态和组合状态、转换&#xff0…

十大经典排序算法复杂度、应用场景总结 | 插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序、桶排序、计数排序

前言 好久不见辽,uu们!这几天由于准备专业课的课堂pre,因此一直没能给 “c实现十大经典排序算法” 系列结个尾。本次的十大排序算法包括:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序、桶排序…

递归课堂案例

一个不知名大学生,江湖人称菜狗 original author: Jacky Li Email : 3435673055qq.com Time of completion:2024.03.24 Last edited: 2024.03.24 目录 递归课堂案例 第1关:斐波那契数列 任务描述 相关知识 编程要求 代码如下&#xff1…

java每日一题——买啤酒(递归经典问题)

前言: 非常喜欢的一道题,经典中的经典。打好基础,daydayup!!!啤酒问题:一瓶啤酒2元,4个盖子可以换一瓶,2个空瓶可以换一瓶,请问10元可以喝几瓶 题目如下: 啤酒问题:一瓶…

学习笔记 | 微信小程序项目day03

今日学习内容 配置自定义导航栏通用轮播组件通用的轮播图组件完善以及主页调用分类面板以及热门推荐面板猜你喜欢模块&#xff08;分页查询&#xff09;首页下拉刷新首页骨架屏 配置自定义导航栏 1、创建自定义组件 /index/components/CustomNavbar.vue <script setup l…

关于使用TCP-S7协议读写西门子PLC字符串的问题

我们可以使用TCP-S7协议读写西门子PLC&#xff0c; 比如PLC中定义一个String[50] 的地址DB300.20 地址DB300.20 DB块编号为300&#xff0c;偏移量【地址】是30 S7协议是西门子PLC自定义的协议&#xff0c;默认端口102&#xff0c;本质仍然是TCP协议的一种具体实现&#xff…

ForceField Effects

支持HDRP、URP和LWRP 完全可定制和优化的ForceField VFX Pack。我们使所有着色器和材质都非常易于调整,因此您可以非常轻松地创建自己独特的效果。几乎每个参数都可以调整。所有这些效果都适合于每个游戏,无论是风格化还是现实主义的。该软件包还附带一系列颜色渐变,可用于更…

力扣-20 有效的括号详解 Java

目录 1.题目分析 2.基础知识储备 2.1 哈希表 2.2 栈的存取 3. 逻辑概要 4.源码 示例 1.题目分析 为了对比都是从内而外&#xff0c;一个个匹配&#xff0c;全部匹配成功即为有效字符 2.基础知识储备 2.1 哈希表 简单来说&#xff0c;keyvalue存储 &#xff0c;通过key…

ideaSSM 高校公寓交流员管理系统bootstrap开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 idea 开发 SSM 高校公寓交流管理系统是一套完善的信息管理系统&#xff0c;结合SSM框架和bootstrap完成本系统&#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;&#xff0c;系统具有完整的源代码和数据库&…

一篇文章搞懂并设计循环队列

目录 1.为什么使用循环队列 2. 循环队列组成 为什么要只使用size-1 个空间存储&#xff1f; 3.循环队列的元素进出 3.1 队尾加入元素 3.2 队头删除元素 3.3 取出队头元素 3.4 取出队尾元素 1.为什么使用循环队列 “假溢出”——》 出队列会空出存储空间&#xff0c;无法…

Gogs - 一款极易搭建的自助 Git 服务

Gogs - 一款极易搭建的自助 Git 服务 1. 使用文档References Gogs https://gogs.io/ https://github.com/gogs/gogs Gogs (/gɑgz/) 项目旨在打造一个以最简便的方式搭建简单、稳定和可扩展的自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发&#xff0c;并…

模拟-算法

文章目录 替换所有的问号提莫攻击Z字形变换外观数列数青蛙 替换所有的问号 算法思路&#xff1a; 从前往后遍历整个字符串&#xff0c;找到问号之后&#xff0c;就遍历 a ~ z 去尝试替换即可。 class Solution {public String modifyString(String s) {char[] ss s.toCharA…

最近公共祖先(LCA)

祖孙询问 给定一棵包含 n 个节点的有根无向树&#xff0c;节点编号互不相同&#xff0c;但不一定是 1∼n。 有 m 个询问&#xff0c;每个询问给出了一对节点的编号 x 和 y&#xff0c;询问 x 与 y 的祖孙关系。 输入格式 输入第一行包括一个整数 表示节点个数&#xff1b; …

基于YOLOv8深度学习的橙子病害智能诊断与防治系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标分类

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

【MySQL】复合查询——基本单表查询、多表查询、自连接、子查询、使用from进行子查询、合并查询

文章目录 MySQL复合查询1. 基本单表查询2. 多表查询3. 自连接4. 子查询4.1 单行子查询4.2 多行子查询4.3 多列子查询4.4 使用from进行子查询 5. 合并查询5.1 union5.2 union all MySQL 复合查询 数据库的复合查询是指在一个查询中结合使用多个查询条件或查询子句&#xff0c;以…

java多线程编程面试题总结

一些最基本的基础知识就不总结了&#xff0c;参考之前写的如下几篇博客&#xff0c;阅读顺序从上到下&#xff0c;依次递进。 java 多线程 多线程概述及其三种创建方式 线程的常用方法 java 线程安全问题 三种线程同步方案 线程通信&#xff08;了解&#xff09; java 线程池…

CSS案例-2.简单版侧边栏练习

效果 知识点 标签显示模式 块级元素 block-level 常见元素:<h1>~<h6>、<p>、<div>、<ul>、<ol>、<li>等。 特点: 独占一行长度、宽度、边距都可以控制宽度默认是容器(父级宽度)的100%是一个容器及盒子,里面可以放行内或者…

spring注解驱动系列--AOP探究二

上篇中记录了AnnotationAwareAspectJAutoProxyCreator的创建以及注册&#xff0c;主要是 1、EnableAspectJAutoProxy 注解会开启AOP功能 2、然后这个注解会往容器中注册一个AnnotationAwareAspectJAutoProxyCreator组件。 3、之后在容器创建过程中&#xff0c;注册后置处理器&a…