使用JMeter进行MySQL的压力测试

  • 前言
  • 1. JMeter安装
  • 2. 导入MySQL驱动
  • 3. 配置并使用JMeter连接数据库
  • 4. 其他使用小技巧
  • 总结


前言

JMeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。而且JMeter拿到安装包之后直接解压就可以使用,同时它也可以在linux/windows/macos上使用。

JMeter可以做接口测试和压力测试,其中接口测试的简单操作包括做 http 脚本(发 get/post 请求、加 cookie、加 header、加权限认证、上传文件)、做webservice脚本、参数化、断言、关联(正则表达式提取器和处理 json-json path extractor),而且JMeter还能进行数据库的相关测试。

1. JMeter安装

在安装JMeter之前需要先配置好JDK环境,然后通过JMeter官网下载(https://jmeter.apache.org/download_jmeter.cgi)安装包解压,即可直接使用。

2. 导入MySQL驱动

在MySQL官网(https://downloads.mysql.com/archives/c-j/)找到对应版本的MySQL驱动进行下载,并将其拷贝到%JMETER_HOME%libext目录下,重启JMeter

3. 配置并使用JMeter连接数据库

step1:添加JDBC Connection Configuration

在配置元件中选择JDBC Connection Configuration进行添加,正常情况下只要修改以下参数即可,其他均使用默认值:

  • Variable name: 连接池变量名在稍后要添加的JDBC Request中要保持一致。
  • Database URL: MySQL的标准格式为:jdbc:mysql://host[:port]/dbname,根据实际情况进行修改。
  • JDBC Driver class:MySQL驱动就是com.mysql.jdbc.Driver。
  • Username和Password:根据实际情况正确填写即可。

step2:添加JDBC Request

在线程组中选择取样器添加JDBC Request

  • Variable name:与之前的设置的连接池变量名一致。
  • Query Type:主要包括八种类型,每种类型作用都不一样。

1.Select statement:执行第一条sql语句的查询,如果是多条sql语句也只会执行第一条sql语句;2.Update statement:执行第一条更新语句,包含insert和update;3.Callable statement:执行多条sql语句,也可以调用存储过程,需要注意的是选择该类型,在JDBC连接配置的Database URL后需要添加?allowMultiQueries=true;4.Prepared select statement:执行预编译的查询语句,语句中的参数可以从parameter values中获取;5.Prepared update statement:执行预编译的更新语句包含insert和update;6.Commit:将未存储的SQL语句结果写入数据库表;7.Rollback:撤销指定SQL语句的过程;8.AutoCommit(false):禁用自动提交;Autocommit(true): 开启自动提交;