测试时应用的脚本为lua脚本,可以应用sysbench自带脚本,也可以本身开辟。对于大年夜多半应用,应用sysbench自带的脚本就足够了。不合版本的sysbench中,lua脚本的地位可能不合,可以本身在sysbench路径下应用find敕令搜刮oltp.lua。P.S.:大年夜多半数据办事都是oltp类型的,如不雅你不懂得什么是oltp,那么大年夜概率你的数据办事就是oltp类型的。
(3)options
sysbench的参数有很多,个中比较常用的包含:
MySQL连接信息参数
- –mysql-host:MySQL办事器主机名,默认localhost;如不雅在本机上应用localhost报错,提示无法连接MySQL办事器,改成本机的IP地址应当就可以了。
- –mysql-port:MySQL办事器端口,默认3306
- –mysql-user:用户名
- –mysql-password:暗码
MySQL履行参数
- –oltp-test-mode:履行模式,包含simple、nontrx和complex,默认是complex。simple模式下只测试简单的萌芽;nontrx不仅测试萌芽,还测试插入更新等,然则不应用事务;complex模式下测试最周全,会测试增删改查,并且会应用事务。可以根据本身的须要选择测试模式。
- –oltp-tables-count:测试的表数量,根据实际情况选择
- –oltp-table-size:测试的表的大年夜小,根据实际情况选择
- –threads:客户端的并发连接数
- –time:测试履行的时光,单位是秒,该值不要太短,可以选择120
- –report-interval:生成申报的时光距离,单位是秒,如10
4、sysbench应用举例
在履行sysbench时,应当留意:
(1)尽量不要在MySQL办事器运行的机械长进行测试,一方面可能无法表现收集(哪怕是局域网)的影响,另一方面,sysbench的运行(尤其是设置的并发数较高时)会影响MySQL办事器的表示。
(2)可以慢慢增长客户端的并发连接数(–thread参数),不雅察在连接数不合情况下,MySQL办事器的表示;如分别设置为10,20,50,100等。
(3)一般履行模式选择complex即可,如不雅须要特别测试办事器只读机能,或不应用事务时的机能,可以选择simple模式或nontrx模式。
(4)如不雅持续进行多次测试,留意确保之前测试的数据已经被清理干净。
下面是sysbench应用的一个例子:
- sysbench ./tests/include/oltp_legacy/oltp.lua --mysql-host=192.168.65.66 --mysql-port=3306 --mysql-user=root --mysql-password=123456 --oltp-test-mode=complex --oltp-tables-count=10 --oltp-table-size=100000 --threads=10 --time=120 --report-interval=10 prepare
个中,履行模式为complex,应用了10个表,每个表有10万条数据,客户端的并发线程数为10,履行时光为120秒,每10秒生成一次申报。

(2)履行测试
将测试结不雅导出到文件中,便于后续分析。
- sysbench ./tests/include/oltp_legacy/oltp.lua --mysql-host=192.168.65.66 --mysql-port=3306 --mysql-user=root --mysql-password=123456 --oltp-test-mode=complex --oltp-tables-count=10 --oltp-table-size=100000 --threads=10 --time=120 --report-interval=10 run >> /home/test/mysysbench.log
(3)清理数据
履行完测试后,清理数据,不然后面的测试会受到影响。
(3)安装
sysbench是跨平台的基准测试对象,支撑多线程,支撑多种数据库;重要包含以下几种测试:
- cpu机能
- 磁盘io机能
- 调剂法度榜样机能
- 内存分派及传输速度
- POSIX线程机能
- 数据库机能(OLTP基准测试)
- sysbench ./tests/include/oltp_legacy/oltp.lua --mysql-host=192.168.65.66 --mysql-port=3306 --mysql-user=root --mysql-password=123456 cleanup
测试停止后,查看输出文件,如下所示:

个中,对于我们比较重要的信息包含:
queries:萌芽总数及qps
transactions:事务总数及tps
Latency-95th percentile:前95%的请求的最大年夜响应时光,本例中是344毫秒,这个延迟异常大年夜,是因为我用的MySQL办事器机能很差;在正式情况中这个数值是绝对不克不及接收的。
三、建议
下面是应用sysbench的一些建议。
基准测试与压力测试
1、在开端测试之前,应当起首明白:应采取针半数个体系的基准测试,照样针对MySQL的基准测试,照样二者都须要。
2、如不雅须要针对MySQL的基准测试,那么还须要明白精度方面的请求:是否须要应用临盆情况的┞锋实数据,照样应用对象生成也可以;前者实施起来加倍繁琐。如不雅要应用真实数据,尽量应用全部数据,而不是部分数据。
3、基准测试要进行多次才有意义。
4、测试时须要留意主大年夜同步的状况。
推荐阅读
元数据须要治理数据拜访权限、取得数据概要结不雅,数据开辟者和终端用户的反馈。元数据储存了定义临盆预备就绪的策略,并且可以或许履行这些策略。没有元数据,数据湖就会无法应用,并变成一个严重的安然风险。 >>>详细阅读
地址:http://www.17bianji.com/lsqh/37841.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示