yum install gcc gcc-c++ autoconf automake make libtool mysql-devel git mysql
git clone https://github.com/akopytov/sysbench.git
##从Git中下载Sysbench
cd sysbench
##打开sysbench目录
git checkout 1.0.18
##切换到sysbench 1.0.18版本
./autogen.sh
##运行autogen.sh
./configure --prefix=/usr --mandir=/usr/share/man
make
##编译 make install
执行完每一步最好echo $? 看下回显 确认一下是否成功
mysql -u root -pZxcvbnm@2023
创建测试用库
create database sbtest;
flush privileges;
Mysql8.x 密码策略也要改一下 不然会报错
use mysql;
alter user 'root'@'localhost' identified with mysql_native_password by 'Zxcvbnm@20223;
参数按需修改即可
--db-driver=mysql 指定使用数据库的类型
--mysql-host=127.0.0.1 指定mysql服务器主机
--mysql-port=3306 指定mysql服务端口
--mysql-user=root 指定mysql用户
--mysql-password=Zxcvbnm@2022 指定mysql用户密码
--mysql-db=sbtest 指定测试库的参数,没有则会报错
--table_size=25000 指定单表数据量
--tables=32 指定表数量
--events=0 事件总数显示默认0
--time=60 指定测试时长 60秒
--threads=8 测试要使用的线程总数
--percentile=95 百分位延迟统计
--report-interval=1 定期报告中间统计信息。0为禁用中间报表
注意每次运行都要按照 1.准备数据 2.运行 3.清理数据。测试服务器配置2c/7.5G
OLTP读写混合场景压测
##准备数据
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 oltp_read_write prepare
##运行workload
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 --percentile=95 --report-interval=1 oltp_read_write run
##清理数据
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 --percentile=95 oltp_read_write cleanup
读写混合测试结果 8线程 100 表 单表数据量25000 测试时长60秒
OLTP只读场景压测
##准备数据
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 oltp_read_only prepare
##运行workload
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 --percentile=95 --skip-trx=1 --report-interval=1 oltp_read_only run
##清理数据
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 --percentile=95 oltp_read_only cleanup
只读测试结果 8线程 100 表 单表数据量25000 测试时长60秒
OLTP只写场景压测
##准备数据
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 oltp_write_only prepare
##运行workload
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 --percentile=95 --report-interval=1 oltp_write_only run
##清理数据
sysbench --db-driver=mysql --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=Zxcvbnm@2022 --mysql-db=sbtest --table_size=25000 --tables=100 --events=0 --time=60 --threads=8 --percentile=95 oltp_write_only cleanup
只写测试结果 8线程 100 表 单表数据量25000 测试时长60秒
官方文档https://help.aliyun.com/document_detail/151977.html 参考