sysbench 压测mysql数据库
admin
2023-04-20 19:43:38
0

sysbench是一款压力测试工具,可以测试系统的硬件性能,也可以用来对数据库进行基准测试,使用起来很方便,
同时sysbench支持以下几种测试模式:
1、CPU运算性能
2、磁盘IO性能
3、调度程序性能
4、内存分配及传输速度
5、POSIX线程性能
6、数据库性能(OLTP基准测试)
目前sysbench主要支持 mysql,drizzle,pgsql,oracle 等几种数据库。
1.
安装sysbench:
yum install epel-release

yum install sysbench -y

使用sysbench --help 查看帮助。

2.sysbench提供了很多自带压测脚本,脚本放在 /usr/share/sysbench 目录下,本文使用安装sysbench压测mysql数据库:

在准备压测的数据库上创建用户和数据库信息:
grant all privileges on *.* to sysbench identified by 'sysbench';
flush privileges;
create database sysbench_db;

a.准备压测数据:

sysbench /usr/share/sysbench/oltp_insert.lua \
 --mysql-host=192.168.56.102 \
 --mysql-port=3306 \
 --mysql-user=sysbench \
 --mysql-password='sysbench' \
 --mysql-db=sysbench_db \
 --db-driver=mysql \
 --tables=15 \
 --table-size=500000 \
 --report-interval=10 \
 --threads=128 \
 --time=120 \
 prepare


[root@my-mm sysbench]# sysbench /usr/share/sysbench/oltp_insert.lua \
>  --mysql-host=192.168.56.102 \
>  --mysql-port=3306 \
>  --mysql-user=sysbench \
>  --mysql-password='sysbench' \
>  --mysql-db=sysbench_db \
>  --db-driver=mysql \
>  --tables=15 \
>  --table-size=500000 \
>  --report-interval=10 \
>  --threads=128 \
>  --time=120 \
>  prepare
sysbench 1.0.9 (using system LuaJIT 2.0.4)

Initializing worker threads...

Creating table 'sbtest14'...
Creating table 'sbtest12'...
Creating table 'sbtest3'...
Creating table 'sbtest5'...
Creating table 'sbtest11'...
Creating table 'sbtest4'...
Creating table 'sbtest13'...
Creating table 'sbtest10'...
Creating table 'sbtest9'...
Creating table 'sbtest8'...
Creating table 'sbtest15'...
Creating table 'sbtest1'...
Creating table 'sbtest2'...
Creating table 'sbtest6'...
Creating table 'sbtest7'...
Inserting 500000 records into 'sbtest12'
Inserting 500000 records into 'sbtest11'
Inserting 500000 records into 'sbtest10'
Inserting 500000 records into 'sbtest2'
Inserting 500000 records into 'sbtest5'
Inserting 500000 records into 'sbtest8'
Inserting 500000 records into 'sbtest13'
Inserting 500000 records into 'sbtest4'
Inserting 500000 records into 'sbtest3'
Inserting 500000 records into 'sbtest7'
Inserting 500000 records into 'sbtest15'
Inserting 500000 records into 'sbtest1'
Inserting 500000 records into 'sbtest6'
Inserting 500000 records into 'sbtest9'
Inserting 500000 records into 'sbtest14'
Creating a secondary index on 'sbtest9'...
Creating a secondary index on 'sbtest11'...
Creating a secondary index on 'sbtest1'...
Creating a secondary index on 'sbtest5'...
Creating a secondary index on 'sbtest14'...
Creating a secondary index on 'sbtest6'...
Creating a secondary index on 'sbtest13'...
Creating a secondary index on 'sbtest4'...
Creating a secondary index on 'sbtest15'...
Creating a secondary index on 'sbtest8'...
Creating a secondary index on 'sbtest2'...
Creating a secondary index on 'sbtest7'...
Creating a secondary index on 'sbtest12'...
Creating a secondary index on 'sbtest3'...
Creating a secondary index on 'sbtest10'...

查看监控:

sysbench 压测mysql数据库

b.压测:

sysbench /usr/share/sysbench/oltp_insert.lua \
 --mysql-host=192.168.56.102 \
 --mysql-port=3306 \
 --mysql-user=sysbench \
 --mysql-password='sysbench' \
 --mysql-db=sysbench_db \
 --db-driver=mysql \
 --tables=15 \
 --table-size=500000 \
 --report-interval=10 \
 --threads=128 \
 --time=120 \
 run


查看qps:
sysbench 压测mysql数据库
[root@my-mm sysbench]# sysbench /usr/share/sysbench/oltp_insert.lua \
>  --mysql-host=192.168.56.102 \
>  --mysql-port=3306 \
>  --mysql-user=sysbench \
>  --mysql-password='sysbench' \
>  --mysql-db=sysbench_db \
>  --db-driver=mysql \
>  --tables=15 \
>  --table-size=500000 \
>  --report-interval=10 \
>  --threads=128 \
>  --time=120 \
>  run
sysbench 1.0.9 (using system LuaJIT 2.0.4)

Running the test with following options:
Number of threads: 128
Report intermediate results every 10 second(s)
Initializing random number generator from current time


Initializing worker threads...

Threads started!

[ 10s ] thds: 128 tps: 1475.71 qps: 1475.71 (r/w/o: 0.00/1475.71/0.00) lat (ms,95%): 164.45 err/s: 0.00 reconn/s: 0.00
[ 20s ] thds: 128 tps: 895.50 qps: 895.50 (r/w/o: 0.00/895.50/0.00) lat (ms,95%): 282.25 err/s: 0.00 reconn/s: 0.00
[ 30s ] thds: 128 tps: 1490.81 qps: 1490.81 (r/w/o: 0.00/1490.81/0.00) lat (ms,95%): 189.93 err/s: 0.00 reconn/s: 0.00
[ 40s ] thds: 128 tps: 1385.42 qps: 1385.42 (r/w/o: 0.00/1385.42/0.00) lat (ms,95%): 207.82 err/s: 0.00 reconn/s: 0.00
[ 50s ] thds: 128 tps: 1300.72 qps: 1300.72 (r/w/o: 0.00/1300.72/0.00) lat (ms,95%): 193.38 err/s: 0.00 reconn/s: 0.00
[ 60s ] thds: 128 tps: 2194.74 qps: 2194.74 (r/w/o: 0.00/2194.74/0.00) lat (ms,95%): 92.42 err/s: 0.00 reconn/s: 0.00
[ 70s ] thds: 128 tps: 2226.52 qps: 2226.52 (r/w/o: 0.00/2226.52/0.00) lat (ms,95%): 86.00 err/s: 0.00 reconn/s: 0.00
[ 80s ] thds: 128 tps: 1149.59 qps: 1149.59 (r/w/o: 0.00/1149.59/0.00) lat (ms,95%): 272.27 err/s: 0.00 reconn/s: 0.00
[ 90s ] thds: 128 tps: 881.20 qps: 881.20 (r/w/o: 0.00/881.20/0.00) lat (ms,95%): 320.17 err/s: 0.00 reconn/s: 0.00
[ 100s ] thds: 128 tps: 1602.52 qps: 1602.52 (r/w/o: 0.00/1602.52/0.00) lat (ms,95%): 142.39 err/s: 0.00 reconn/s: 0.00
[ 110s ] thds: 128 tps: 1722.31 qps: 1722.31 (r/w/o: 0.00/1722.31/0.00) lat (ms,95%): 158.63 err/s: 0.00 reconn/s: 0.00
[ 120s ] thds: 128 tps: 1956.95 qps: 1956.95 (r/w/o: 0.00/1956.95/0.00) lat (ms,95%): 108.68 err/s: 0.00 reconn/s: 0.00
SQL statistics:
    queries performed:
        read:                            0
        write:                           182948
        other:                           0
        total:                           182948
    transactions:                        182948 (1522.89 per sec.)
    queries:                             182948 (1522.89 per sec.)
    ignored errors:                      0      (0.00 per sec.)
    reconnects:                          0      (0.00 per sec.)

General statistics:
    total time:                          120.1302s
    total number of events:              182948

Latency (ms):
         min:                                  3.65
         avg:                                 84.00
         max:                               3444.05
         95th percentile:                    189.93
         sum:                            15367235.04

Threads fairness:
    events (avg/stddev):           1429.2812/12.53
    execution time (avg/stddev):   120.0565/0.03


c.清理压测数据:

 sysbench /usr/share/sysbench/oltp_insert.lua \
 --mysql-host=192.168.56.102 \
 --mysql-port=3306 \
 --mysql-user=sysbench \
 --mysql-password='sysbench' \
 --mysql-db=sysbench_db \
 --db-driver=mysql \
 --tables=15 \
 --table-size=500000 \
 --report-interval=10 \
 --threads=128 \
 --time=120 \
 cleanup

[root@my-mm sysbench]#  sysbench /usr/share/sysbench/oltp_insert.lua \
>  --mysql-host=192.168.56.102 \
>  --mysql-port=3306 \
>  --mysql-user=sysbench \
>  --mysql-password='sysbench' \
>  --mysql-db=sysbench_db \
>  --db-driver=mysql \
>  --tables=15 \
>  --table-size=500000 \
>  --report-interval=10 \
>  --threads=128 \
>  --time=120 \
>  cleanup
sysbench 1.0.9 (using system LuaJIT 2.0.4)

Dropping table 'sbtest1'...
Dropping table 'sbtest2'...
Dropping table 'sbtest3'...
Dropping table 'sbtest4'...
Dropping table 'sbtest5'...
Dropping table 'sbtest6'...
Dropping table 'sbtest7'...
Dropping table 'sbtest8'...
Dropping table 'sbtest9'...
Dropping table 'sbtest10'...
Dropping table 'sbtest11'...
Dropping table 'sbtest12'...
Dropping table 'sbtest13'...
Dropping table 'sbtest14'...
Dropping table 'sbtest15'...

相关内容

热门资讯

燃气发电与电池储能相结合,成为... 来源:市场资讯 (来源:i商周) 孟菲斯一座xAI数据中心的燃气轮机 人工智能的用电飙升,让数据中心...
景嘉微:JM11性能大幅提升,... 有投资者在互动平台向景嘉微提问:“董秘您好!关注到近期有用户反馈公司JM11显卡推出了适配windo...
原创 v... 影像的发展进一步推动,不少品牌推出了专业影像手机,拥有2亿像素摄像头、色彩还原摄像头、影像芯片、影像...
荣耀首款自研耳夹式耳机官宣即将... 快科技5月13日消息,日前,荣耀首席营销官关海涛宣布,荣耀全场景团队自研首款耳夹式耳机马上上市,并称...
谷歌推出Googlebooks... IT之家 5 月 13 日消息,2026 年 I/O 开发者大会下周(5 月 19~20 日)召开之...
自控所推动GNC专业智能化升级 来源:滚动播报 (来源:中国航空报) 本报讯 5月6日,航空工业自控所召开 GNC+AI关键技术研发...
华电电力申请数据库访问方法专利... 国家知识产权局信息显示,华电电力科学研究院有限公司申请一项名为“数据库访问方法、装置、设备及介质”的...
苏州率先打造数据流通利用新范式 数据,作为第五大生产要素 具有流动性强、非消耗性、非均质性等特点 苏州率先打造数据流通利用新范式 夯...
伊媒披露伊美新一轮谈判5个先决... 当地时间5月12日,据伊朗法尔斯通讯社援引知情人士消息报道,伊朗对与美国新一轮谈判提出的5个先决条件...
英国将向霍尔木兹海峡多国护航行... 当地时间12日,总台记者从英国国防部获悉,英国将向在霍尔木兹海峡执行任务的多国护航行动提供无人机、战...