配置步骤
1、下载驱动包(jdbc)
文件名:mysql-connector-java-6.0.2.jar
链接:https://pan.baidu.com/s/1SEdVYpWeGIhWGrGI5GdxFg
提取码:1234
2、把jar包放入jmeter的lib文件夹下,重启jmeter才能生效。

其它方式:在测试计划中,添加此jar包即可(无需重启) 如图

3、链接数据库(JDBC Connection Configuration)
添加JDBC Connection Configuration,路径如下
线程组》添加》配置元件》JDBC Connection Configuration,
(数据库的连接信息都存储在这个配置元件里面,所以如果我们要通过Jmeter对数据库进行操作,就要先新增此配置元件来配置数据)
如图

连接池配置如下图
Variable Name for created pool(定义池变量名称)自定义参数,在JDBC Request中会用到;

连接池其它参数配置,基本保持默认就行了,可根据需要进行修改
| 字段 | 含义 |
| Max Number of Connections |
|
| Max Wait(ms) | 在连接池中取回连接最大等待时间,单位毫秒 |
| Time Between Eviction Runs(ms) |
|
| Auto Commit | 自动提交sql语句,如:修改数据库时,自动 commit |
| Transaction isolation | 事务隔离级别 |
| Preinit Pool |
|
最下面,设置数据库连接配置,如下图

数据库连接配置
| 字段 | 含义 |
| Database URL | 数据库连接 URL |
| JDBC Driver class | 数据库驱动 |
| Username | 数据库登录用户名 |
| Password | 数据库登录密码 |
| Connection Properties | 建立连接时要设置的连接属性 |
Database URL:jdbc:mysql:// 数据库IP地址:数据库端口/数据库名称;(如果要执行多条SQL语句,后面还要添加“?allowMultiQueries=true”)
如图配置:jdbc:mysql://localhost:3306/apitool?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
JDBC Driver Class:com.mysql.jdbc.Driver;
4、添加JDBC Request
路径:线程组》添加》取样器》JDBC Request
如图1

如图2,JDBC Request配置如下

字段含义
| 字段 | 含义 |
| Variable Name Bound to Pool | 数据库连接池配置的名称 |
| Query Type | sql 语句的类型 |
| SQL Query |
|
| Parameter values | 需要传递的变量值,多个变量用 , 分隔 |
| Parameter types | 变量类型 |
| Variable Names |
|
| Result Variable Name | 一个 Object 变量存储所有返回值 |
| Query timeout(s) | 超时时间;默认0,代表无限时间 |
| Limit ResultSet | 和 limit 类似作用,限制 sql 语句返回结果集的行数 |
| Handle ResultSet | 如何定义 callable statements 返回的结果集;默认是存储为字符串 |
后续通过各种栗子来深入理解常用字段的含义
user表

JDBC Request-只有 sql 语句的栗子

执行结果:

JDBC Request 参数化的栗子

知识点
- 有几个问号,Parameter value、Parameter type 填写值的数量要保持一致,用,分隔(数值integer)
- 问号其实是占位符,如果学过编程的童鞋应该也知道这种写法,可以避免 SQL 注入的问题
- sql 中使用占位符时,Query Type 必须选择 Prepared Select Statement 或者 Prepared Update Statement
- 我们可以用 Jmeter 变量去赋值,看下面栗子
JDBC Request-参数化+变量的栗子
用户自定义变量id=1
sql语句中使用变量${id},如下
select * from user where username= ? and id = ${id};

本文详细介绍了如何在JMeter中配置MySQLJDBC驱动、设置连接池、添加JDBCRequest以及执行SQL语句,包括参数化以防止SQL注入。步骤涉及下载驱动、配置连接参数和执行数据库操作的示例。

3948

被折叠的 条评论
为什么被折叠?



