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
 
 
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

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

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
 

mysql性能测试--sysbench实践的更多相关文章

  1. MYSQL性能测试工具SYSBENCH

    [root@localhost ~]$ wget https://github.com/akopytov/sysbench/archive/1.0.zip -O "sysbench-1.0. ...

  2. paip.mysql 性能测试 报告 home right

    paip.mysql  性能测试 报告 home right 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog ...

  3. paip.mysql 性能测试by mysqlslap

    paip.mysql 性能测试by mysqlslap   作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blog. ...

  4. MySql主从配置实践及其优势浅谈

    MySql主从配置实践及其优势浅谈 1.增加两个MySQL,我将C:\xampp\mysql下的MYSQL复制了一份,放到D:\Mysql2\Mysql5.1 修改my.ini(linux下应该是my ...

  5. mysql性能测试-tpcc

    mysql性能测试-tpcc Tpcc-mysql TPC-C是专门针对联机交易处理系统(OLTP系统)的规范 Tpcc-mysql由percona根据规范实现 TPCC流程  更能模拟线上业务   ...

  6. MySQL性能测试工具之mysqlslap

    MySQL性能测试工具之mysqlslap [日期:2014-10-05] 来源:Linux社区  作者:tongcheng [字体:大 中 小]   --转自Linux社区:http://www.l ...

  7. mysql性能测试-------重要!!!

    我们在做性能测试的目的是什么,就是要测出一个系统的瓶颈在哪里,到底是哪里影响了我们系统的性能,找到问题,然后解决它.当然一个系统由很多东西一起组合到一起,应用程序.数据库.服务器.中中间件等等很多东西 ...

  8. MySQL性能测试调优

    MySQL性能测试调优 操作系统 基本操作 查看磁盘分区mount选项 $ mount 永久修改分区mount选项(系统重启后生效) 修改文件 /etc/fstab 中对应分区的mount optio ...

  9. 一文了解MySQL性能测试及调优中的死锁处理方法,你还看不明白?

    一文了解MySQL性能测试及调优中的死锁处理方法,你还看不明白? 以下从死锁检测.死锁避免.死锁解决3个方面来探讨如何对MySQL死锁问题进行性能调优. 死锁检测 通过SQL语句查询锁表相关信息: ( ...

随机推荐

  1. 如何创建 SVN 服务器,并搭建自己的 SVN 仓库

    SVN是一个广泛使用的版本控制系统,在日常工作中有广泛的应用空间,比如文档管理,我们就可以搭建一个 SVN 仓库,日常需要归类保存的文档统统上传到仓库中,那如何创建 SVN 服务器, 又如何搭建 SV ...

  2. easyui-textbox 只读设置取消

    <script> $(function () { $("#txt_beginAmount").attr('readonly', true); $("#txt_ ...

  3. swift学习笔记之---数组、字典、枚举、结构体

    1.数组-Array let types = ["none","warning","error"] //省略类型的数组声明 let menb ...

  4. python2.0_s12_day11_SqlAlchemy使用介绍

    SqlAlchemy ORM ORM的解释; 简单点:对象关系映射. 需求:我们写一个主机管理,把主机信息存在数据库,一开始我们编程不熟练的时候,执行命令时候要调用数据库,会把相应的SQL语句写到代码 ...

  5. Serlvet学习笔记之二—不同页面共享数据

    一共有四种方法实现共享页面共享数据 1.cookie 2.sendRedirect 3.session 4.隐藏表单提交(form) 5.ServletContex 1.cookie:服务器在客户端保 ...

  6. APP的缓存文件放在哪里?

    只要是需要进行联网获取数据的APP,都会在本地产生缓存文件.那么,这些缓存文件到底放在什地方合适呢?系统有没有给我们提供建议的缓存位置呢?不同的缓存位置有什么不同呢? 考虑到卸载APP必须删除缓存 在 ...

  7. 【ecshop】调用购物车商品数量

    1 打开 includes/lib_insert.php 在最后位置添加如下代码: /** * 调用购物车商品数目 */ function insert_cart_mes_num() { $sql = ...

  8. OpenGL ES2学习笔记(6)-- Line Strip和Line Loop

    Line Strip 上一篇文章画了两条线段,但是用了4个点.如果几条线段首尾相接的话,可以让OpenGL把他们当成Line Strip来画,这样就可以用n+1个点来画n条线段. 代码 import ...

  9. JS-元素大小深入学习-offset、client、scroll等学习研究笔记

    一些属性和方法,在dom中没有规定如何确定页面中元素大小的情况下诞生... 1.偏移量(offset dimension) 测试代码: <!DOCTYPE html> <html&g ...

  10. URLSearchParams 接口定义处理 URL 参数串

    基本使用方法如下 /* * URLSearchParams属性 * @语法:new URLSearchParams(parameter); */ (function(){ var str = &quo ...