MySQL基准测试-sysbench安装,使用

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: ***1.sysbench 下载 https://github.com/akopytov/sysbench 下载sysbench源代码 sysbench futures: 1、CPU运算性能 2、磁盘IO性能 3、调度程序性能 4、内存分配及传输速度 5、POSIX线程性能 6、数据库性能(OLTP基准测试)***2.
***1.sysbench 下载
https://github.com/akopytov/sysbench 下载sysbench源代码

sysbench futures:
1、CPU运算性能
2、磁盘IO性能
3、调度程序性能
4、内存分配及传输速度
5、POSIX线程性能
6、数据库性能(OLTP基准测试)

***2.sysbench 安装
[root@db01 mysql]# cd /arp/software/
[root@db01 software]# unzip sysbench-0.5.zip
[root@db01 software]# cd sysbench-0.5
./autogen.sh
./configure --with-mysql-includes=/usr/include/mysql --with-mysql-libs=/usr/lib64/mysql
make && make install


***3.创建zsdtest数据库
[root@db01 software]# mysql -uroot -p'Redhat@7101' -e'create database zsdtest';


***4.OLTP测试数据准备
sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=root --mysql-password='Redhat@7101' --mysql-db=zsdtest \
 --test=/arp/software/sysbench-0.5/sysbench/tests/db/oltp.lua --oltp_tables_count=10 --oltp-table-size=500000 --rand-init=on prepare
 
选项解释:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
--test=/arp/software/sysbench-0.5/sysbench/tests/db/oltp.lua 表示调用 /arp/software/sysbench-0.5/sysbench/tests/db/oltp.lua 脚本进行 oltp 模式测试
--oltp_tables_count=10 表示会生成 10 个测试表
--oltp-table-size=500000 表示每个测试表填充数据量为 500000 
--rand-init=on 表示每个测试表都是用随机数据来填充的
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 


***5.OLTP测试数据运行
sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=root \
--mysql-password='Redhat@7101' --mysql-db=zsdtest --test=/arp/software/sysbench-0.5/sysbench/tests/db/oltp.lua --oltp_tables_count=10 \
--oltp-table-size=5000000 --num-threads=8 --oltp-read-only=off \
--report-interval=10 --rand-type=uniform --max-time=3600 \
--max-requests=0 --percentile=99 run >> ./log/sysbench_oltpX_8_201606281607.log

选项解释:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
--num-threads=8 表示发起 8个并发连接
--oltp-read-only=off 表示不要进行只读测试,也就是会采用读写混合模式测试
--report-interval=10 表示每10秒输出一次测试进度报告
--rand-type=uniform 表示随机类型为固定模式,其他几个可选随机模式:uniform(固定),gaussian(高斯),special(特定的),pareto(帕累托)
--max-time=3600 表示最大执行时长为 3600秒
--max-requests=0 表示总请求数为 0,因为上面已经定义了总执行时长,所以总请求数可以设定为 0;也可以只设定总请求数,不设定最大执行时长
--percentile=99 表示设定采样比例,默认是 95%,即丢弃1%的长请求,在剩余的99%里取最大值
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


***测试结果解读:
[root@db01 log]# more sysbench_oltpX_8_201606281607.log 
sysbench 0.5:  multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 8
Report intermediate results every 10 second(s)
Random number generator seed is 0 and will be ignored

Initializing worker threads...
Threads started!
....
[3580s] threads: 8, tps: 693.01, reads: 9700.98, writes: 2771.02, response time: 47.64ms (99%), errors: 0.00, reconnects:  0.00
[3590s] threads: 8, tps: 611.50, reads: 8562.18, writes: 2446.79, response time: 139.96ms (99%), errors: 0.00, reconnects:  0.00
[3600s] threads: 8, tps: 552.20, reads: 7732.13, writes: 2209.31, response time: 155.19ms (99%), errors: 0.00, reconnects:  0.00
OLTP test statistics:
    queries performed:
        read:                            33497786                        --- 读总数
        write:                           9570747                         --- 写总数
        other:                           4785357                         --- 其他操作总数(select,insert,update,delete以外的操作,例如commit等)
        total:                           47853890                        --- 全部总数
    transactions:                        2392658 (664.63 per sec.)       --- 总事务数(每秒事务数)
    read/write requests:                 43068533 (11963.45 per sec.)    --- 读写总数(每秒读写次数)
    other operations:                    4785357 (1329.26 per sec.)      --- 其他操作总数(每秒其他操作次数)
    ignored errors:                      41     (0.01 per sec.)
    reconnects:                          0      (0.00 per sec.)

General statistics:         --- 常规统计结果
    total time:                          3600.0079s                      --- 耗时时间
    total number of events:              2392658                         --- 共发生的事务数
    total time taken by event execution: 28790.4089s                     --- 所有事务耗时相加(不考虑并行因素)
    response time:          --- 响应时间统计
         min:                                  3.18ms                    --- 最小耗时 
         avg:                                 12.03ms                    --- 平均耗时
         max:                               2528.39ms                    --- 最长耗时
         approx.  99 percentile:             124.65ms                    --- 超过99%平均耗时

Threads fairness:
    events (avg/stddev):           299082.2500/2282.75
    execution time (avg/stddev):   3598.8011/0.03

以上数据来自测试环境如下:
机型:                  PowerEdge M820
CPU:  Intel(R) Xeon(R) CPU E5-4610 v2 @ 2.30Ghz(8核,16线程)*4
内存:                       256GB
存储:         HP 3PAR 共享存储,(SATA盘 3TB 7200 RPM)
虚拟云平台              Vmware vSphere
操作系统                CENTOS 6.5
文件系统                    ext4
MySQL版本          5.7.13 MySQL Community Server

文献参考:http://imysql.com/tag/sysbench sysbench安装、使用、结果解读
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
23天前
|
关系型数据库 MySQL Linux
Docker安装Mysql5.7,解决无法访问DockerHub问题
当 Docker Hub 无法访问时,可以通过配置国内镜像加速来解决应用安装失败和镜像拉取超时的问题。本文介绍了如何在 CentOS 上一键配置国内镜像加速,并成功拉取 MySQL 5.7 镜像。
193 2
Docker安装Mysql5.7,解决无法访问DockerHub问题
|
7天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
22 3
|
26天前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
41 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
27天前
|
Java 关系型数据库 MySQL
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
这篇文章是关于自动化测试项目实战笔记,涵盖了JDK、Tomcat、MySQL、Jpress环境的安装和搭建过程,以及测试用例和常见问题总结。
45 1
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
|
8天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
16 2
|
9天前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
10天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
46 2
|
22天前
|
SQL Oracle 关系型数据库
安装最新 MySQL 8.0 数据库(教学用)
安装最新 MySQL 8.0 数据库(教学用)
95 4
|
23天前
|
Ubuntu 关系型数据库 MySQL
Linux系统MySQL安装
【10月更文挑战第19天】本文介绍了在 Linux 系统上安装 MySQL 的步骤,包括安装前准备、安装 MySQL、启动 MySQL 服务、配置 MySQL 以及验证安装。适用于 Ubuntu/Debian 和 CentOS/Fedora 系统,提供了详细的命令示例。
123 1
|
26天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置服务等,并与使用 RPM 包安装进行了对比,帮助读者根据需求选择合适的方法。编译源码安装虽然复杂,但提供了更高的定制性和灵活性。
199 2