sysbench基准测试

aduocd 2019-06-27

sysbench测试

基本信息

192.168.1.58与192.168.1.59的内核参数文件内容是一致的
主机CPU核心数内存大小内核版本
192.168.1.584核8G2.6.32
192.168.1.584核8G2.6.32

安装sysbench

官方安装脚本方式
curl -s https://packagecloud.io/install/repositories/akopytov/sysbench/script.rpm.sh | sudo bash
yum安装方式  
yum install epel-release  && sudo yum -y install sysbench
export LD_LIBRARY_PATH=/usr/local/mysql/lib/

1 CPU基准测试报告

使用以下参数
--num-threads    线程数,默认值为1
--max-requests   最大请求数,默认值为10000
--cpu-max-prime  最大素数,使用该参数后,会使用64-bit int型进行性能测试计算
--percentile  取值百分比值,默认是95 ,即丢弃5%的长请求,在剩余的95%里取最大值

#指定线程数和最大请求数测试CPU
sysbench --num-threads=16 --max-requests=20000 --debug=on --test=cpu --cpu-max-prime=50000 run
主机线程数最大请求数计算最大素数总时间最小响应时间最大响应时间平均响应时间95%的语句的平均响应时间
192.168.1.5816200005000010.0332s12.13ms48.45ms111.34ms78.60ms
192.168.1.5916200005000010.0567s23.74ms77.91ms125.91ms97.55ms

2 磁盘IO基准测试报告

Sysbench的fileio测试需要经过prepare、run和cleanup三个阶段。prepare是准备阶段,生产需要的测试文件,run是实际测试阶段,cleanup是清理测试产生的文件。
进行4个文件、总大小2GB的fileio测试:
sysbench fileio \
--file-num=4 \
--file-total-size=2G \
prepare

sysbench fileio \
--time=180 \
--events=100000000 \
--threads=1 \
--file-num=4 \
--file-total-size=2G \
--file-io-mode=sync \
--file-test-mode=rndrd \
--file-block-size=16384 \
run

sysbench fileio \
--file-num=16 \
--file-total-size=2G \
cleanup
prepare阶段
主机名准备时间速率
192.168.1.5810.24s200.02 MiB/s
192.168.1.5939.61s51.70 MiB/s
测试阶段
主机名测试模式最大随机请求数磁盘IOPS磁盘每秒速率
192.168.1.58rndrd100000000257233.754019.28
192.168.1.59rndrd100000000177808.022778.25

3 OLTP基准测试

查看帮助
sysbench --test=oltp help
主要测试以下参数

--mysql-engine-trx=STRING     指定不同的存储引擎测试。
--oltp-test-mode=STRING       测试类型:simple(简单select测试),complex(事务测试),nontrx(非事务测试),sp(存储过程) ;默认complex
--oltp-sp-name=STRING         指定存储过程进行语句测试
--oltp-table-size=N           指定表的记录大小,默认[10000]
--oltp-num-tables=N           指定测试表的数量,默认[1]
先创建好测试数据库eitest
事务测试,测试12个线程执行1万条请求,10个表,每个表大小100W

准备
sysbench --num-threads=12 --max-requests=100000 \
 --test=/usr/share/sysbench/tests/include/oltp_legacy/oltp.lua\
 --mysql-user=root --mysql-password=123456 \
 --oltp-test-mode=complex --mysql-db=eitest --db-driver=mysql \
 --oltp-table-size=1000000 --oltp-num-tables=10 prepare 

测试
sysbench --num-threads=12 --max-requests=100000 \
 --test=/usr/share/sysbench/tests/include/oltp_legacy/oltp.lua\
 --mysql-user=root --mysql-password=123456 \
 --oltp-test-mode=complex --mysql-db=eitest --db-driver=mysql \
 --oltp-table-size=1000000 --oltp-num-tables=10 run

清理
sysbench --num-threads=12 --max-requests=100000 \
 --test=/usr/share/sysbench/tests/include/oltp_legacy/oltp.lua\
 --mysql-user=root --mysql-password=123456 \
 --oltp-test-mode=complex --mysql-db=eitest --db-driver=mysql \
 --oltp-table-size=1000000 --oltp-num-tables=10 cleanup

每秒事务量 TPS
每秒的读写请求数 RQ
主机名CPU核心数内存总时间TPSRQ95%的请求花费
192.168.1.584核8G10.0099s850.0016999.9823.95
192.168.1.592核8G10.0100s775.5015509.9326.20

相关推荐