1. 测试目的
对mysql数据库进行基准测试,各性能指标进行定量的、可复现的、可对比的测试。
基准测试可以理解为针对系统的一种压力测试。但基准测试不关心业务逻辑,更加简单、直接、易于测试,
数据可以由工具生成,不要求真实;而压力测试一般考虑业务逻辑(如购物车业务),要求真实的数据。
2. 测试环境
2.1 软件配置
2.1 硬件配置
3.测试工具
3.1 工具介绍sysbench
本次测试采用通用工具SysBench,是跨平台的基准测试工具,支持多线程,支持多种数据库;
对数据库的基准测试的作用,就是分析在当前的配置下(包括硬件配置、OS、数据库设置等) 数据库的性能表现,
从而找出MySQL的性能阈值,并根据实际系统的要求调整硬件配置。
3.2 测试指标
TPS:Transaction Per Second,事务数/秒
一台数据库服务器在单位时间内处理事务的个数,每个事务包含18条SQL语句。
QPS:Query Per Second, 查询量/秒
每秒执行的查询次数,是对服务器在规定时间内所处理查询量多少的衡量标准,即数据库每秒执行的SQL数,包含insert、select、update、delete等。
响应时间:包括平均响应时间、最小响应时间、最大响应时间、时间百分比等,其中时间百分比参考意义较大,如前95%的请求的最大响应时间。
并发量:同时处理的查询请求的数量。
4. 安装步骤
1 #cd /opt2 #下载sysbench包3 #wget -c https://github.com/akopytov/sysbench/archive/1.0.12.zip -O "sysbench-1.0.12.zip"4 #安装依赖项5 #yum install autoconf libtool mysql mysql-devel vim unzip6 #解压文件包7 #unzip sysbench-1.0.12.zip8 #编译9 #cd sysbench-1.0.1210 #./autogen.sh11 #./configure12 #make13 #make install
上述命令依次执行,安装完成。查找测试脚本所在路径:
#find / -name '*oltp.lua*'
例如:/opt/sysbench-1.0.12/tests/include/oltp_legacy/oltp.lua
然后进入 cd /opt/sysbench-1.0.12,开始测试。
5. 参数说明
sysbenh测试工具命令,根据测试需要调整参数sysbench [options]... [testname] [command]
sysbench --help 查看命令的基本参数
表5-1
选项[options]
备注
--test
脚本路径 oltp.lua
--mysql-db
测试库名称
--mysql-host
数据库IP地址
--mysql-port
端口号 默认3306
--mysql-user
数据库用户名,一般是root
--mysql-password
数据库密码
在老版本的sysbench中,可以通过--test参数指定测试的脚本;
而在新版本中,--test参数已经声明为废弃,可以不使用--test,而是直接指定脚本。如下两种结果相同