iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Sysbench对Mysql进行基准测试过程解析
  • 542
分享到

Sysbench对Mysql进行基准测试过程解析

SysbenchMysql基准测试 2022-05-10 15:05:03 542人浏览 安东尼
摘要

前言 1.基准测试(benchmarking)是性能测试的一种类型,强调的是对一类测试对象的某些性能指标进行定量的、可复现、可对比的测试。 进一步来理解,基准测试是在某个时候通过基准测试建立一个已知的性能水平(称为

前言

1.基准测试(benchmarking)是性能测试的一种类型,强调的是对一类测试对象的某些性能指标进行定量的、可复现、可对比的测试。

进一步来理解,基准测试是在某个时候通过基准测试建立一个已知的性能水平(称为基准线),当系统的软硬件环境发生变化之后再进行一次基准测试以确定那些变化对性能的影响,这也是基准测试最常见的用途。其他用途包括测定某种负载水平下的性能极限、管理系统或环境的变化、发现可能导致性能问题的条件等等。

2.基准测试的作用:

对于大多数WEB应用而言,系统的瓶颈往往很容易发生在数据库端,原因很简单:Web应用中的其他因素,例如网络带宽、负载均衡节点、应用服务器(包括CPU、内存、硬盘灯、连接数等)、缓存,都很容易通过水平的扩展(俗称加机器)来实现性能的提高。而对于数据库Mysql,由于数据一致性的要求,无法通过增加机器来分散向数据库写数据带来的压力;虽然可以通过前置缓存(Redis等)、读写分离、分库分表来减轻压力,但是与系统其它组件的水平扩展相比,受到了太多的限制。
而对数据库的基准测试的作用,就是分析在当前的配置下(包括硬件配置、OS、数据库设置等),数据库的性能表现,从而找出数据库的性能阈值,并根据实际系统的要求调整配置。除此之外,对数据库服务器进行基准测试,也通常用于观察对比数据库结构修改之前以及修改之后,其性能会受到什么样的影响。

3.基准测试与压力测试区别:

很多时候,基准测试和压力测试在实际使用的过程中,很容易被弄混淆。基准测试可以理解为针对系统的一种压力测试。但基准测试不关心业务逻辑,更加简单、直接、易于测试,数据可以由工具生成,不要求真实;而压力测试一般考虑业务逻辑(如购物车业务),要求真实的数据。

4.基准测试工具:

SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试:

cpu性能

磁盘io性能

调度程序性能

内存分配及传输速度

POSIX线程性能

数据库性能(OLTP基准测试)

目前sysbench主要支持 mysql,pgsql,oracle 这3种数据库。

安装

yum -y install sysbench

sysbench --help ##检查安装是否成功

友情提示:安装出现依赖包缺少可以看这里

数据准备

准备

create database sysbench_test;

show databases; #检查数据库

quit #退出


2. 开始

find / -name oltp*.lua #查找sysbench自带的数据写入脚本的路径,后面执行命令需要用到

sysbench /usr/share/sysbench/oltp_read_write.lua --tables=5 --table_size=100 --mysql-user=root --mysql-passWord=xxx --mysql-host=192.168.0.103 --mysql-port=3306 --mysql-db=sysbench_test prepare
#/usr/share/sysbench/oltp_read_write.lua :上面查询到的sysbench自带读写脚本的路径
#--tables:指定生成表的数量,此处设置了5张表,表明生成5张测试表,读者可根据实际需要,调整此值。
#--table_size:指定生成表中生成的数据量,上述例子,表明每张表生成100条测试数据,实际可以根据需要调整引值,比如调整为:1000000,即代表生成一百万条测试数据。
#--mysql-db: 连接的测试数据库名称,此处使用上面创建的数据库进行测试。
#--mysql-user: 连接的数据库的用户名
#--mysql-password: 连接的数据库的密码
#--mysql-port: 连接的数据库开发的端口

执行提示错误

原因:

导入的数据超过数据库默认的值

解决:

需要到安装mysql的服务器上修改数据配置

vim /etc/my.cnf

修改max_allowed_packet的值,如果没有则在最后面添加一行

再次执行成功,mysql客服端检查一下数据

执行测试

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-user=root --mysql-password=xxx --mysql-host=192.168.0.103 --mysql-port=3306 --mysql-db=sysbench_test --tables=5 --table_size=100 --threads=10 --time=30 --report-interval=3 run
#--threads:表示线程数
#--time:表示执行时间
#--report-interval:表示间隔多少秒输出测试信息
# run :表示运行,其他参数信息和上面一致就不在讲解了

上述命令,表明使用了10个并发线程数,执行时间为30秒,每3秒输出一次测试信息

其中,对于我们比较重要的信息包括:

  • queries:查询总数及qps
  • transactions:事务总数及tps
  • Latency-95th percentile:前95%的请求的响应时间。

清理数据

测试完成后别忘了最后的收尾工作,大量的测试数据存在数据库还是有影响的.

sysbench /usr/share/sysbench/oltp_read_write.lua --tables=5 --table_size=100 --mysql-user=root --mysql-password=xxx --mysql-host=192.168.0.103 --mysql-port=3306 --mysql-db=sysbench_test cleanup
#这里的参数按之前插入数据的参数填写,确保全部清除干净


检查数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。

您可能感兴趣的文档:

--结束END--

本文标题: Sysbench对Mysql进行基准测试过程解析

本文链接: https://www.lsjlt.com/news/10002.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Sysbench基准测试的示例分析
    这篇文章给大家分享的是有关Sysbench基准测试的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 Sysbench和TPCC-MySQL一样...
    99+
    2024-04-02
  • 如何理解MySQL基准测试和sysbench工具
    如何理解MySQL基准测试和sysbench工具,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前言作为一名后台开发,对数据库进行基准测试,...
    99+
    2024-04-02
  • MySQL如何使用sysbench做OLTP基准测试
    这篇文章给大家分享的是有关MySQL如何使用sysbench做OLTP基准测试的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 一、 安装① 下载源码...
    99+
    2024-04-02
  • 怎么使用HammerDB进行MySQL基准测试
    使用HammerDB进行MySQL基准测试的步骤如下: 首先,下载并安装HammerDB。你可以在HammerDB的官方网站(h...
    99+
    2023-10-24
    HammerDB MySQL
  • 使用 BenchmarkDotNet 对 C# 代码进行基准测试
    目录安装 BenchmarkDotNet 什么是基准测试 创建基准测试代码 运行 benchmark BenchmarkDotNet 是一个轻量级,开源的,强大的 .NET 工具包,...
    99+
    2024-04-02
  • python怎么进行基准测试
    这篇文章将为大家详细讲解有关python怎么进行基准测试,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最...
    99+
    2023-06-14
  • MySQL中怎么使用hammerdb进行基准测试
    今天就跟大家聊聊有关MySQL中怎么使用hammerdb进行基准测试,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。root@master /usr/...
    99+
    2024-04-02
  • 如何对 C++ 函数性能进行基准测试?
    为 c++++ 函数进行基准测试,可采取以下步骤:使用计时工具(如 std::chrono 库)测量执行时间。编写基准测试函数以执行代码并返回执行时间。利用基准测试库获取高级功能,如统计...
    99+
    2024-04-19
    性能基准测试 git c++
  • Java使用JMH进行基准性能测试分析
    本篇内容主要讲解“Java使用JMH进行基准性能测试分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java使用JMH进行基准性能测试分析”吧!一、前言在日常开发工作当中,开发人员可能有这些困...
    99+
    2023-06-25
  • 使用mysqlslap与sysbench怎么对MySQL进行压测
    这篇文章将为大家详细讲解有关使用mysqlslap与sysbench怎么对MySQL进行压测,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。mysqlslap...
    99+
    2024-04-02
  • 如何使用BenchmarkDotNet对C#代码进行基准测试
    这篇文章给大家分享的是有关如何使用BenchmarkDotNet对C#代码进行基准测试的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。BenchmarkDotNet 是一个轻量级,开源的,强大的 .NET 工具包,...
    99+
    2023-06-14
  • 详解Java使用JMH进行基准性能测试
    目录一、前言 二、JMH概述 1、什么是JMH 2、JMH适用的典型场景 3、JMH基本概念 三、JMH的使用 1、快速跑起来 2、JMH常用注解详细介绍 四、小结 附: 一、前言 ...
    99+
    2024-04-02
  • 【星云测试】开发者测试-采用精准测试工具对Spring Boot应用进行测试
    简介:本文主要介绍把现今主流的springboot框架项目和精准测试工具进行结合和应用,通过精准测试的数据穿透、数据采集、测试用例与代码的双向追溯、数据分析等一系列精准测试的特有功能,达到对项目质量的保证。 本次环境搭建分为基础环...
    99+
    2023-06-02
  • go通过benchmark对代码进行性能测试详解
    目录benchmark的使用运行Benchmark指定测试时长或测试次数重置时间和暂停计时查看内存使用情况testing.B的底层实现总结benchmark的使用 在开发中我们要想编...
    99+
    2023-05-17
    go-benchmark代码性能测试 go benchmark
  • 开发者测试(4)-采用精准测试工具对dubbo微服务应用进行测试
    简介:本文主要目的是把现今主流的Dubbo框架项目和精准测试进行对接,通过精准测试的数据穿透、数据采集、测试用例与代码的双向追溯、数据分析等一系列精准测试的特有功能达到对项目质量的保证。 本次环境搭建分为基础环境准备、Dubbo环境搭建、精...
    99+
    2023-06-02
  • 怎么用PL/SQL进行数据库性能基准测试
    要使用PL/SQL进行数据库性能基准测试,可以按照以下步骤进行: 创建测试表:首先,创建一个测试表来存储测试数据。可以使用以下SQ...
    99+
    2024-05-08
    PL/SQL
  • 【星云测试】开发者测试(3)-采用精准测试工具对springcloud微服务应用进行穿透测试
    1、微服务简介   微服务英文名称Microservice,Microservice架构模式就是将整个Web应用组织为一系列小的Web服务。这些小的Web服务可以独立地编译及部署,并通过各自暴露的API接口相互通讯。它们彼此相互协作,作为一...
    99+
    2023-06-02
  • MySQL 基准测试工具tpcc-mysql使用手册及报告分析
    〇 下载安装 git clone https://github.com/Percona-Lab/tpcc-mysql.git cd tpcc-mysql/sr...
    99+
    2024-04-02
  • 在Golang的高并发场景中如何进行基准测试和性能分析?
    为了在 go 的高并发场景中进行基准测试和性能分析,您可以采取以下步骤:使用 go test 工具进行基准测试,以测量代码在特定条件下的性能。使用 go tool pprof 工具进行性...
    99+
    2024-05-10
    基准测试 性能分析 golang 并发访问 并发请求
  • Go语言工程实践单元测试基准测试示例详解
    目录背景测试单元测试演示覆盖率依赖文件处理Mock基准测试小结背景 测试的出现是为了避免项目中出现重大事故 测试是避免事故的最后一道屏障 测试 单元测试的覆盖率在一定程度上而言,...
    99+
    2023-02-05
    Go语言单元测试基准测试 Go语言测试
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作