Sysbench安装和使用

来源:互联网 发布:map添加数据 编辑:程序博客网 时间:2024/05/20 02:23

介绍

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

它主要包括以下几种方式的测试:

  • cpu性能
  • POSIX线程性能
  • 磁盘io性能
  • 内存分配及传输速度
  • 调度程序性能
  • 数据库性能(OLTP基准测试)

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

安装

安装步骤

  • 下载sysbench,wget https://launchpadlibrarian.net/48145223/sysbench_0.4.12.orig.tar.gz
  • 解压,cd sysbench-0.4.12
  • ./configure –with-mysql
  • make && make install

make报错处理

  • ../libtool: line 838: X–tag=CC: command not found
  • ../libtool: line 871: libtool: ignoring unknown tag : command not found

原因:libtool版本太老
解决办法:

  • 安装libtool
  • 复制系统libtool到sysbench根目录或者而修改aclocal.m4中libtool路径
  • 修改config/ltmain.sh中$echo$ECHO

sysbench的使用

测试CPU

sysbench --test=cpu --cpu-max-prime=20000 run

cpu测试主要是进行素数的加法运算,在上面的例子中,指定了最大的素数为 20000,自己可以根据机器cpu的性能来适当调整数值。
这里写图片描述

测试线程

sysbench --test=threads --num-threads=64 --thread-yields=100 --thread-locks=2 run

这里写图片描述

测试磁盘IO

sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw preparesysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw runsysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw cleanup

指定了最大创建16个线程,创建的文件总大小为3G,文件读写模式为随机读。
虚拟机磁盘空间限制,测试失败。

调度程序性能测试

测试mutex

sysbench –test=mutex –num-threads=100 –mutex-num=1000 –mutex-locks=100000 –mutex-loops=10000 run

内存测试

sysbench --test=memory --memory-block-size=8k --memory-total-size=4G run

参数指定了本次测试整个过程是在内存中传输 4G 的数据量,每个 block 大小为 8K。

OLTP测试

准备测试数据

sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test                 --mysql-user=root --mysql-password=123456 prepare

运行测试

sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test                 --mysql-user=root --max-time=720 --max-requests=0--num-threads=16 --oltp-test-mode=complex run

这里写图片描述

原创粉丝点击