阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

MySQL性能测试–Sysbench实践

153次阅读
没有评论

共计 1807 个字符,预计需要花费 5 分钟才能阅读完成。

Sysbench
  • 业界较为出名的性能测试工具
  • 可以测试磁盘,CPU,数据库
  • 支持多种数据库:Oracle,DB2,MySQL
  • 需要自己下载编译安装
  • 建议版本:sysbench0.5
sysbench, 不仅用来测试数据库的性能,也可以测试运行数据库的服务器的性能。
强烈建议熟悉 sysbench 测试,在 mysql 用户的工具包中,这应该是最有用的工具之一。
 
  • sysbench 的 cpu 基准测试
  • sysbench 的文件 I / O 基准测试
  • sysbench 的 OLTP 基准测试
sysbench 其他的基准测试,但和数据库性能没有直接关系。
  • 内存 —– 测试内存的连续读写性能
  • 线程 —– 测试线程调度器的性能。
  • 互斥锁 — 测试互斥锁性能。
  • 顺序写 — 测试顺序写的性能。
问题:
  • 表结构单一
  • 没有相关约束和索引
  • 测试的 SQL 语句相对简单
 
使用方法

 
1. 下载 sysbench
 
git clone https://github.com/akopytov/sysbench
 
目录结构
root@itcast01:/home/aiapple/sysbench# ls
autogen.sh  configure.ac  install-sh   missing        README-WIN.txt
ChangeLog   COPYING       m4           mkinstalldirs  sysbench
config      doc           Makefile.am  README.md      TODO
 
2. 编译 & 安装
 
./autogen.sh
./configure --prefix=/home/sysbench
make
make install
 
3. sysbench 流程
  • 初始化数据(prepare)
  • 运行测试(run)
  • 清理数据(cleanup)
a) 初始化数据 prepare:
 
sysbench --test=parallel_prepare.lua --oltp_tables_count=1 --rand-init=on --oltp-table-size=500000000 --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=sys --mysql-password=netease --mysql-db=sbtest --max-requests=0 prepare
 
 MySQL 性能测试 --Sysbench 实践
 
sysbench 表结构
MySQL 性能测试 --Sysbench 实践

b) 运行测试 –run

sysbench --test=oltp.lua --oltp_tables_count=1 --num-threads=100 --oltp-table-size=500000000 --oltp-read-only=off --report-interval=10 --rand-type=uniform --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=sys --mysql-password=netease --mysql-db=sbtest --max-time=1000 --max-requests=0 run

MySQL 性能测试 --Sysbench 实践

特殊情况
  • 写入测试(纯 insert 情况)
 
数据解读
运行数据
MySQL 性能测试 --Sysbench 实践
[10s]————– 运行时间点
Threads:100——100 个线程数
tps:378.90——— 每秒执行 378.9 个事务
reads:————- 读请求数
writes:———— 写请求数
response time:– 响应时间
errors:————- 错误个数
reconnects:——- 重新连接个数
 
数据汇总
关注
  • 响应时间
  • tps
MySQL 性能测试 --Sysbench 实践

c)清理数据(cleanup)

  • 手动 drop 表和 database
  • 使用 sysbench 提供的 cleanup 命令
 
使用 sysbench 清理数据
sysbench --test=parallel_prepare.lua --oltp_tables_count=1 --rand-init=on --oltp-table-size=500000000 --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=sys --mysql-password=netease --mysql-db=sbtest --max-requests=0 cleanup

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-07/133535.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计1807字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中