性能测试之sysbench

本期是写的测试mysql的性能测试,本人也是第一次接触mysql的性能,拿到这个任务时也是多方1查询资料,

sysbench压力测试工具简介:

sysbench是一个开源的、模块化的、跨平台的多线程性能测试工具,可以用来进行CPU、内存、磁盘I/O、线程、数据库的性能测试。目前支持的数据库有MySQL、Oracle和PostgreSQL。以下操作都将以支持MySQL数据库为例进行。
Sysbench的测试主要包括以下几个方面:
1、磁盘io性能
2、cpu性能
3、内存分配及传输速度
4、POSIX线程性能
5、调度程序性能
6、数据库性能(OLTP基准测试).
原文链接:https://blog.csdn.net/eagle89/article/details/88120154

一、安装sysbench

# 如无法直接下载,则上传到云平机如9.75.147.230,再scp到CVM安装,不能自定义目录,需要在特定的目录下解压安装

cd /usr/local/src

wget https://codeload.github.com/xxxxx/sysbench/tar.gz/1.0.17
 
tar -xzvf /usr/local/src/sysbench-1.0.17.tar.gz -C /usr/local/

tar -xzvf /usr/local/src/1.0.17 -C /usr/local/&&cd /usr/local/sysbench-1.0.17

##RHEL/CentOS
cd /usr/local/sysbench-1.0.17
yum -y install make automake libtool pkgconfig libaio-devel
# For MySQL support, replace with mysql-devel on RHEL/CentOS 5
yum -y install mariadb-devel openssl-devel
# For PostgreSQL support
yum -y install postgresql-devel
 
 
##Build and Install
./autogen.sh
# Add --with-pgsql to build with PostgreSQL support

./configure --with-pgsql
make -j 128

(make的时候可能会遇见文档权限不足,直接退到sysbench这个文件夹上一个目录,修改文件权限

chmod 777 目录名 -R)
make install
sysbench --version

mkdir -p /usr/local/share/sysbench/pgtest/ && cp /usr/local/share/sysbench/*.lua /usr/local/share/sysbench/pgtest/
根据你的目录索引
./configure --prefix=/var/lib/pgsql/sysbench --without-mysql --with-pgsql --with-pgsql-includes=/usr/pgsql-10/include --with-pgsql-libs=/usr/pgsql-10/lib
export LD_LIBRARY_PATH=/usr/local/mysql/include

如果出现权限不够,可能是因为文件的默认权限是不可执行,这时候需要修改一下权限,chmod 777 *

 最后执行sysbench --version,能出现

版本信息等就安装成功了,编译完成之后就可以正常使用了,

二、配置测试脚本文件(可以自主创建文件执行)

#!/bin/bash

host=11.44.50.xxx # 实例或者节点IP
port=110xx #实例或者节点端口
tables=2000 # 需要生成数据存储的表的个数
size=1000000 # 每张表数据的大小
threads=128 # 每次线程数,最好不要超过表的大小
user=tbase # 数据库用户名
passwd=Sky@xxx # 数据库用户密码
timestr=$(date +"%Y%m%d%H%M%S")
testdb=sysbench_${tables}_${size}_${timestr}

准备数据:

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=xx.xx.xx.xx --mysql-port=xxxx --mysql-user=xxxx --mysql-password=xxxxxxxx --mysql-db=sysbench --db-driver=mysql --tables=512 --table-size=2000000 --report-interval=10 --threads=16 --max-time=1800 prepare

实例压测:

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=xx.xx.xx.xx --mysql-port=xxxx --mysql-user=xxxx --mysql-password=xxxxxxxx --mysql-db=sysbench --db-driver=mysql --tables=512 --table-size=2000000 --report-interval=10 --threads=16 --max-time=1800 run

数据清空:

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=xx.xx.xx.xx --mysql-port=xxxx --mysql-user=xxxx --mysql-password=xxxxxxxx --mysql-db=sysbench --db-driver=mysql --tables=512 --table-size=2000000 --report-interval=10 --threads=16 --max-time=1800 cleanup

其中数据生成大小可以参考如下(具体数据大小可以根据下列数据构造):

2481GB:
tables=100,size=100000000

248GB:
tables=1000,size=1000000

25GB:
tables=100,size=1000000

2562MB:
tables=10,size=1000000

2554MB:
tables=1,size=10000000

三、测试生成数据库

 四、测试过程查看数据灌入情况

五、测试结果分析(后续补充具体分析)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值