sysbench压测过程
1.sysbench安装(sysbench1.1.0)
| [root@master soft]# ls sysbench1.1.0.zip
sysbench1.1.0.zip 解压: [root@master soft]# unzip sysbench1.1.0.zip 安装依赖: yum -y install mysql-devel yum -y install make automake libtool pkgconfig libaio-devel vim-common 编译安装: cd sysbench-master/ ./autogen.sh ./configure --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib make make install cd /usr/local/share/sysbench 若编译安装出错的解决方法: ls -l /usr/local/mysql/lib/libmysqlclient.so.18* ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/ vi /etc/ld.so.conf export LD_LIBRARY_PATH=/usr/local/mysql/lib ldconfig |
2.sysbench压测说明
| [root@master sysbench-master]# cd /usr/local/share/sysbench
[root@master sysbench]# ls bulk_insert.lua oltp_delete.lua oltp_point_select.lua oltp_read_write.lua oltp_update_non_index.lua select_random_points.lua tests oltp_common.lua oltp_insert.lua oltp_read_only.lua oltp_update_index.lua oltp_write_only.lua select_random_ranges.lua 使用其中的oltp_read_write.lua进行读写压力测试: 第1步:构建数据 sysbench oltp_read_write.lua --mysql-socket=/tmp/mysql3306.sock --mysql-host=192.168.88.8 --mysql-port=3306 --mysql-db=lbgtest --mysql-user=root --mysql-password=root --table_size=50000 --tables=10 --threads=20 --time=60 --report-interval=10 prepare 第2步:压测 sysbench oltp_read_write.lua --mysql-socket=/tmp/mysql3306.sock --mysql-host=192.168.88.8 --mysql-port=3306 --mysql-db=lbgtest --mysql-user=root --mysql-password=root --table_size=50000 --tables=10 --threads=20 --time=60 --report-interval=10 run 选项说明: --mysql-db=lbgtest --用来测试的库,需先创建好。 --table-size=100000 表示每个测试表数据量为 100000 --tables=10 测试的表的个数(会自动创建)。 --threads=20 20个并发链接进行测试。 time=60 表示测试总时长为 60秒 --report-interval=10 表示每10秒输出一次测试进度报告 注明:上面的oltp_read_write.lua可写成绝对路径,将prepare改为run即可进行测试。 |
3.压测示例
| 建测试库:
mysql> create database lbgtest; 创建测试数据: [root@master sysbench]# sysbench oltp_read_write.lua --mysql-socket=/tmp/mysql3306.sock --mysql-host=192.168.88.8 --mysql-port=3306 --mysql-db=lbgtest --mysql-user=root --mysql-password=root --table_size=50000 --tables=10 --threads=20 --time=60 --report-interval=10 prepare sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3) Initializing worker threads... Creating table 'sbtest7'... Creating table 'sbtest10'... Creating table 'sbtest8'... Creating table 'sbtest3'... Creating table 'sbtest1'... Creating table 'sbtest2'... Creating table 'sbtest6'... Creating table 'sbtest5'... Creating table 'sbtest4'... Creating table 'sbtest9'... Inserting 50000 records into 'sbtest3' Inserting 50000 records into 'sbtest5' Inserting 50000 records into 'sbtest1' Inserting 50000 records into 'sbtest6' Inserting 50000 records into 'sbtest9' Inserting 50000 records into 'sbtest2' Inserting 50000 records into 'sbtest4' Inserting 50000 records into 'sbtest8' Inserting 50000 records into 'sbtest10' Inserting 50000 records into 'sbtest7' Creating a secondary index on 'sbtest5'... Creating a secondary index on 'sbtest6'... Creating a secondary index on 'sbtest4'... Creating a secondary index on 'sbtest7'... Creating a secondary index on 'sbtest1'... Creating a secondary index on 'sbtest9'... Creating a secondary index on 'sbtest3'... Creating a secondary index on 'sbtest2'... Creating a secondary index on 'sbtest10'... Creating a secondary index on 'sbtest8'... 完成后查看测试数据: 可以在测试库里看到数据: mysql> use lbgtest; mysql> show tables; +-------------------+ | Tables_in_lbgtest | +-------------------+ | sbtest1 | | sbtest10 | | sbtest2 | | sbtest3 | | sbtest4 | | sbtest5 | | sbtest6 | | sbtest7 | | sbtest8 | | sbtest9 | +-------------------+ mysql> select count(1) from sbtest1; +----------+ | count(1) | +----------+ | 50000 | +----------+ 1 row in set (0.02 sec) 测试: [root@master sysbench]# sysbench oltp_read_write.lua --mysql-socket=/tmp/mysql3306.sock --mysql-host=192.168.88.8 --mysql-port=3306 --mysql-db=lbgtest --mysql-user=root --mysql-password=root --table_size=50000 --tables=10 --threads=20 --time=60 --report-interval=10 run sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3) Running the test with following options: Number of threads: 20 Report intermediate results every 10 second(s) Initializing random number generator from current time Initializing worker threads... Threads started! [ 10s ] thds: 20 tps: 112.24 qps: 2281.24 (r/w/o: 1598.45/456.37/226.42) lat (ms,95%): 303.33 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 20 tps: 141.68 qps: 2829.12 (r/w/o: 1983.33/562.42/283.36) lat (ms,95%): 244.38 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 20 tps: 160.33 qps: 3198.39 (r/w/o: 2239.41/638.32/320.66) lat (ms,95%): 219.36 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 20 tps: 161.93 qps: 3248.02 (r/w/o: 2272.64/651.52/323.86) lat (ms,95%): 207.82 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 20 tps: 153.09 qps: 3055.18 (r/w/o: 2140.95/608.16/306.08) lat (ms,95%): 227.40 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 20 tps: 167.67 qps: 3354.30 (r/w/o: 2347.85/671.10/335.35) lat (ms,95%): 223.34 err/s: 0.00 reconn/s: 0.00 SQL statistics: queries performed: read: 125762 write: 35932 other: 17966 total: 179660 transactions: 8983 (149.56 per sec.) queries: 179660 (2991.27 per sec.) ignored errors: 0 (0.00 per sec.) reconnects: 0 (0.00 per sec.) Throughput: events/s (eps): 149.5636 time elapsed: 60.0614s total number of events: 8983 Latency (ms): min: 18.81 avg: 133.67 max: 922.85 95th percentile: 240.02 sum: 1200750.85 Threads fairness: events (avg/stddev): 449.1500/6.83 execution time (avg/stddev): 60.0375/0.04 |
4.测试结果说明
| queries performed:
read: 125762 //读总数 write: 35932 //写⼊总数 other: 17966 //其他操作 total: 179660 //总操作数 transactions: 8983 (149.56 per sec.) //TPS每秒事务数 queries: 179660 (2991.27 per sec.) //QPS 每秒的读写请求数 ignored errors: 0 (0.00 per sec.) reconnects: 0 (0.00 per sec.) Throughput: events/s (eps): 149.5636 time elapsed: 60.0614s //总时间 total number of events: 8983 //总事务数 其中主要看: transactions: 8983 (149.56 per sec.) //TPS每秒事务数 queries: 179660 (2991.27 per sec.) //QPS 每秒的读写请求数 |
sysbench压测过程的更多相关文章
- 【MySQL】sysbench压测服务器及结果解读
主要压测范围包括CPU测试.磁盘IO测试.线程测试.OLTP测试等,那么sysbench就可以满足我们的压测需求.下面我们简单来看下sysbench的安装使用以及压测结果的解读. 一.sysbench ...
- 04:Sysbench压测-innodb_flush_log_at_trx_commit,sync_binlog参数对性能的影响
目录 sysbench压测-innodb_flush_log_at_trx_commit,sync_binlog参数对性能的影响 一.OLTP测试前准备 二.MySQL 数据落盘的过程 三.参数说明 ...
- 压测过程中,获取不到redis连接池,发现redis连接数高
说明:图片截得比较大,浏览器放大倍数看即可(涉及到隐私,打了码,请见谅,如果有疑问,欢迎骚扰). 最近在压测过程中,出现获取不到redis连接池的问题 xshell连接redis服务器,查看连接数,发 ...
- 压测过程中使用nmon对服务器资源的监控
1.nmon工具的下载和安装: 官网:http://nmon.sourceforge.net/pmwiki.php 下载完成后进行解压,更改权限:chmod 777 2.查看linux系统的版本,再使 ...
- sysbench对MySQL的压测,使用sysbench压测磁盘io
QPS - query per secondTPS - transaction per second 不是特别关注,每个业务场景中事务标准是不一样的 Ⅰ.sysbench测试框架 Ⅱ.常用测试脚本 [ ...
- 05:Sysbench压测-innodb_deadlock_detect参数对性能的影响
目录 sysbench压测-innodb_deadlock_detect参数对性能的影响 一.OLTP测试前准备 二.进行OLTP测试 三.测试结果解读: 四.关于测试后的结论: 五.关于测试后的性能 ...
- 用sysbench压测MySQL,通过orzdba监控MySQL
1.1 安装sysbench wget https://codeload.github.com/akopytov/sysbench/zip/0.5 unzip 0.5 cd sysbench-0.5/ ...
- jmeter压测过程中报java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider
由于在java中添加了第三方安全策略文件,具体请看https://www.cnblogs.com/mrjade/p/10886378.html,导致在用jmeter压测过程中会遇到以下错误 解决办法: ...
- jmeter进行分布式压测过程与 注意事项
jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmeter单节点难以完成大并发的请求,这时就需要对jmeter进行分布式 ...
随机推荐
- Hash算法简介
Hash算法性质 Hash算法用于计算消息摘要(Message Digest),可以将任意长的输入信息快速地转换为固定长度的输出.在区块链中主要利用了Hash算法的三种性质: 抗冲突性(Collisi ...
- set的运用 例题5-3 安迪的第一个字典(Andy's First Dictionary,Uva 10815)
#include<bits/stdc++.h>using namespace std;set<string> dict;int main(){ string s, buf; w ...
- 为什么堆化 heapify() 只用 O(n) 就做到了?
heapify() 前面两篇文章介绍了什么是堆以及堆的两个基本操作,但其实呢,堆还有一个大名鼎鼎的非常重要的操作,就是 heapify() 了,它是一个很神奇的操作, 可以用 O(n) 的时间把一个乱 ...
- Ambari仓库安装教程
Ambari仓库安装教程 如果用户需要后续使用Ambari server进行安装Hadoop则必须搭建一个内部的yum源,否则直接下载速度将会很慢,当然该服务仅要搭建一个即可,可以一直使用. 一.Ce ...
- UEditor 自定义图片视频尺寸校验
UEditor支持单图.多图以及视频上传,编辑器配置项支持文件格式.文件大小校验,对于文件宽高尺寸校验暂不支持.这里记录一下自定义图片.视频尺寸校验过程,内容核心主要是扩展校验逻辑和增加自定义提示文本 ...
- Storage API简介和存储限制与逐出策略
目录 简介 常用的客户端存储方式 data storage的类型 逐出策略 Storage API estimate persist persisted 综合使用 总结 简介 对于现代浏览器来说,为了 ...
- Spring Cloud Alibaba Sentinel
一.介绍(sentinel 1.7.0) 1,官网地址 https://github.com/alibaba/Sentinel 中文地址:https://github.com/alibaba/Sent ...
- ubuntu 使用cuda以及cudnn
关于我自己的电脑是 mx250显卡. 使用cuda之前需要解决显卡驱动的问题,这个问题最简单的办法就是在[软件更新器]里面更换下载源.我的语言设置是中文,所以默认是cn的镜像源.更换成ustc(中国科 ...
- python接口自动化测试--批量读取数据
为了便于维护,python接口自动化测试用例可以利用xlrd模块读取excal表格进行数据分离.我们可以利用xlrd模块的row_values()和cell_value()两种方法读取Excal表格. ...
- Apache POI 合并单元格--简单解释版带Demo
合并单元格所使用的方法: sheet.addMergedRegion( CellRangeAddress cellRangeAddress ); CellRangeAddress 对象的构造 ...