sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。
系统中若没有此工具可以通过apt-get install sysbench来安装。
此工具用于不同linux系统性能的对比,跑值对比!
sysbench [general-options]… –test= [test-options]… command
通用选项:
--num-threads=N 创建测试线程的数目。默认为1.
--max-requests=N 请求的最大数目。默认为10000,0代表不限制。
--max-time=N 最大执行时间,单位是s。默认是0,不限制。
--forced-shutdown=STRING 超过max-time强制中断。默认是off。
--thread-stack-size=SIZE 每个线程的堆栈大小。默认是32K。
--init-rng=[on|off] 在测试开始时是否初始化随机数发生器。默认是off。
--test=STRING 指定测试项目名称。
--debug=[on|off] 是否显示更多的调试信息。默认是off。
--validate=[on|off] 在可能情况下执行验证检查。默认是off。
磁盘IO性能测试-随机读
前置条件:
操作系统中已安装sysbench压力测试工具和mysql数据库服务端
操作步骤:
1.打开终端,创建测试用的fileio文件,执行:sysbench --test=fileio --file-num=16 --file-total-size=2G prepare(在当前目录下创建16个大小一共为2G的fileio测试文件)
2.对以上16个测试文件使用16个线程随机读进行测试,执行命令:sysbench --test=fileio --file-total-size=2G --file-test-mode=rndrd --max-time=180 --max-requests=100000000 --num-threads=16 --init-rng=on --file-num=16 --file-extra-flags=direct --file-fsync-freq=0 --file-block-size=16384 run
3.记录好测试值后,执行sysbench --test=fileio --file-num=16 --file-total-size=2G cleanup删除测试所产生的文件
记录测试值
随机读取的性能值(Total transferred),随机读的IOPS值(Requests/sec),值越大越好!