重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 131|回复: 2
打印 上一主题 下一主题

[认证考试] MYSQL 性能基准测试

[复制链接]
跳转到指定楼层
楼主
发表于 2026-3-30 15:42:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 郑全 于 2026-3-30 16:06 编辑

安装 sysbench

环境:  MYSQL 8.4.8
  LINUX 10.1
  INNODB CLUSTER 1主2从+ 1 router
  4C/8G
  ssd

1.安装编译依赖

yum install -y make automake libtool pkgconfig mysql-devel

2.下载源码并编译

curl -sSL https://github.com/akopytov/sysb ... /tags/1.0.20.tar.gz | tar -xz
cd sysbench-1.0.20
./autogen.sh && ./configure && make -j$(nproc)
make install


3.验证安装
  sysbench --version


[root@router1 ~]# sysbench --version
sysbench 1.0.20


4.  创建测试数据库
mysql -h127.0.0.1 -P6446 -u root -p'sztech_4U' -e "CREATE DATABASE IF NOT EXISTS sbtest;"

5.准备测试数据
sysbench \    --mysql-host=127.0.0.1 \   
--mysql-port=6446 \   
--db-driver=mysql \   
--mysql-user=root \   
--mysql-password='sztech_4U' \   
--mysql-db=sbtest \   
--table-size=1000000 \   
--tables=8 \   
--threads=4 \   
/usr/local/share/sysbench/oltp_read_write.lua prepare

6.运行性能测试
sysbench \   
--db-driver=mysql \   
--mysql-host=127.0.0.1 \   
--mysql-port=6446 \   
--mysql-user=root \   
--mysql-password='sztech_4U' \   
--mysql-db=sbtest \   
--table-size=1000000 \   
--tables=8 \   
--threads=16 \   
--time=300 \   
--report-interval=10 \   
/usr/local/share/sysbench/oltp_read_write.lua run > /tmp/sysbench_results.txt

7.测试结果
SQL statistics:        queries performed:        
        read:                            1580628        
        write:                           451608        
        other:                           225804        
        total:                           2258040   
     transactions:                        112902 (376.27 per sec.)   
     queries:                             2258040 (7525.39 per sec.)   
     ignored errors:                      0      (0.00 per sec.)   
     reconnects:                          0      (0.00 per sec.)

General statistics:   
     total time:                          300.0550s   
     total number of events:              112902

Latency (ms):         
        min:                                   14.99         
        avg:                                   42.52         
        max:                                  179.68         
        95th percentile:                       65.65         
        sum:                              4800179.08

Threads fairness:   
    events (avg/stddev):           7056.3750/107.27   
    execution time (avg/stddev):   300.0112/0.01

8、豆包分析
本次sysbench测试时长约300秒(5分钟),属于标准压力测试场景,核心围绕数据库查询、事务处理、响应延迟及线程调度公平性展开,整体测试无异常报错,数据库运行稳定,具体分析如下:

1. SQL查询与事务性能(核心指标)

该维度反映数据库处理读写请求的核心能力,是评估数据库吞吐量的关键:
  • 查询性能:测试期间共执行2258040次总查询,平均每秒处理7525.39次查询(QPS=7525.39),查询压力处于中等偏上水平,整体吞吐量表现良好。其中读查询1580628次、写查询451608次、其他操作(如事务提交/回滚)225804次,读写比约3.5:1,符合常规业务(读多写少)的负载特征。
  • 事务性能:共完成112902笔事务,平均每秒处理376.27笔事务(TPS=376.27),事务处理效率稳定,无事务失败、回滚异常情况。
  • 运行稳定性:测试期间忽略错误数、重连数均为0,说明数据库在持续压力下无连接异常、SQL执行报错等问题,运行稳定性达标。

2. 整体运行统计


测试总时长300.0550秒(与预设测试时长基本一致,无提前终止情况),总事件数112902个(即事务总数,与SQL统计中事务数一致),说明测试过程连续、无中断,数据具有参考价值。

3. 延迟性能(用户体验核心指标)

延迟指标直接影响业务响应速度,反映数据库处理请求的及时性,具体解读如下:

  • 最小延迟(min):14.99ms,说明最优情况下,数据库可在15ms内完成一次事务处理,响应速度较快。
  • 平均延迟(avg):42.52ms,整体平均响应延迟处于合理区间(一般业务场景下,平均延迟<50ms属于优秀水平),不会出现明显卡顿。
  • 最大延迟(max):179.68ms,延迟峰值未超过200ms,属于可接受范围,推测峰值出现于多线程并发请求叠加场景,未出现极端延迟。
  • 95th percentile(95分位延迟):65.65ms,意味着95%的事务响应延迟都在65.65ms以内,延迟分布均匀,大部分请求能快速响应,服务稳定性较强。
  • 延迟总和(sum):4800179.08ms,结合总事务数,进一步验证平均延迟计算准确,无异常波动。

4. 线程公平性(并发性能指标)
线程公平性反映数据库在多线程并发场景下,资源分配的合理性,直接影响并发处理能力:

  • 事件平均/标准差(events):7056.3750/107.27,标准差较小(远小于平均值),说明各线程处理的事务数量差异不大,线程负载分配均匀。
  • 执行时间平均/标准差(execution time):300.0112/0.01,标准差极小,说明所有线程的执行时间基本一致,无线程卡顿、资源抢占严重的情况,并发调度机制高效。

5. 整体结论


本次测试中,数据库在中等偏上压力下,吞吐量、延迟、并发稳定性均表现良好,无任何异常报错,符合常规业务场景的性能需求:
  • 优势:读写吞吐量达标,事务处理高效,延迟控制优秀,多线程并发时资源分配均匀,运行稳定。
  • 注意点:最大延迟接近180ms,可后续优化数据库配置(如调整缓存、优化SQL),进一步降低峰值延迟,提升极端场景下的响应速度。






分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

板凳
 楼主| 发表于 2026-3-30 17:20:42 | 只看该作者
郑全 发表于 2026-3-30 15:57
[root@router1 ~]# grep -E "(transactions:|queries:|total time:|95th percentile:)" /tmp/sysbench_resu ...


清理测试数据

sysbench \
    --db-driver=mysql \
    --mysql-host=127.0.0.1 \
    --mysql-port=6446 \
    --mysql-user=root \
    --mysql-password='sztech_4U' \
    --mysql-db=sbtest \
    /usr/local/share/sysbench/oltp_read_write.lua cleanup

回复 支持 反对

使用道具 举报

沙发
 楼主| 发表于 2026-3-30 15:57:11 | 只看该作者
本帖最后由 郑全 于 2026-3-30 16:03 编辑

[root@router1 ~]# grep -E "(transactions:|queries:|total time:|95th percentile:)" /tmp/sysbench_results.txt       

transactions:                        112902 (376.27 per sec.)   
    queries:                             2258040 (7525.39 per sec.)   
    total time:                          300.0550s         
    95th percentile:                       65.65


这一版的 grep 截取值精准地切中了 Sysbench 结果的核心命脉。这份提取的数据非常直观,足以证明当前数据库实例不仅运行稳定,而且性能表现优异。

结合你提取的这四个关键指标,我为你做了深度的一分钟快读分析:

核心指标速览
指标
数值
状态解读
TPS (事务 / 秒)
376.27
优秀。在高压力测试下,每秒近 400 笔事务提交,说明数据库并发处理能力极强。
QPS (查询 / 秒)
7525.39
强劲。平均每秒处理 7500 + 次查询,吞吐量处于高水平区间。
总耗时
300.0550s
正常。测试完整跑完 5 分钟,无中断或超时,数据采集有效。
95 分位延迟
65.65ms
良好。95% 的请求都能在 65 毫秒内响应,属于快响应级别。


深度诊断结论
1. 吞吐量达标,负载压力可控

  • 数据表现:TPC 376.27,QPS 7525.39。
  • 分析:这是一个非常扎实的中间层数据。对于大多数企业级核心业务系统(OLTP 场景),这个吞吐量已经能够支撑极高的业务流量。结合读操作(158 万)远大于写操作(45 万)的比例,系统呈现出典型的读多写少特征,而数据库对此负载处理得游刃有余。

2. 响应速度极快,用户体验优异
  • 数据表现:95th percentile 为 65.65ms。
  • 分析:
    • 行业标准:大部分互联网应用的 SLA(服务等级协议)通常要求 95 分位延迟 < 100ms。你的成绩是 65ms,远超及格线。
    • 体感:65ms 的延迟对用户和前端应用来说几乎是无感的,数据交互非常顺滑。
    • 峰值控制:虽然你之前的日志显示最大延迟(max)为 179ms,但 95 分位仅 65ms,说明慢查询极少,大部分请求都被快速命中或处理,极端情况控制得很好。



3. 运行稳定性满分
  • 数据表现:总时间精准吻合 300 秒。
  • 分析:这意味着在整个测试过程中,数据库服务器 CPU、内存、IO 资源处于平稳饱和状态,没有出现因资源耗尽导致的测试中断,也没有产生连接超时(Reconnects=0),系统架构非常稳健。


优化建议(可选)
虽然成绩优异,但作为严谨的 DBA,你可以关注一点:

  • 峰值延迟(max=179ms):虽然 95 分位很好,但 180ms 的峰值偶尔也会成为前端报错的诱因。
  • 动作:如果要追求极致完美,可以在测试环境尝试增大数据库缓存(Buffer Pool)或进一步优化索引,争取把最大延迟压进 100ms 以内。

总结: 恭喜你,这是一份全绿通关的压测报告!当前数据库的配置与硬件资源完全匹配业务需求,可以放心投入生产环境使用。








回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 20:58 , Processed in 0.510935 second(s), 21 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表