一、加载JDBC驱动

以Mysql数据库为例,数据库测试需要加载JDBC驱动
1、先下载mysql-connector-java-5.1.26.jar
2、打开JMeter,直接拷贝驱动jar包放到到jmeter安装目录的lib目录下或在jmeter中的测试计划中导入

导入JDBC驱动

二、连接数据库

1、在线程组右键—添加—配置元件--“JDBC Connection Configuration”

添加配置JDBC Connection Configuration

2、配置JDBC Connection Configuration

配置JDBC Connection Configuration

具体配置项如下

1、名称:默认为空,填写你所想设置的名称,可为空
2、注释:默认为空,可为空
3、Variable Name:变量名称,需要唯一标识,与JDBC取样器中的相对应,简单理解就是jdbc request的时候确定去哪个绑定的配置。
4、Max Number of Connections 数据库最大连接数,默认10,建议设置为500
5、Pool Timeout  数据库连接超时,单位ms,默认10000    默认即可
6、Idle Clearup Interval 空闲连接清理时间间隔  默认即可
7、Auto Commit   自动提交,有三个选项:true、false、编辑(jmeter提供的函数设置)。默认为true 默认即可
8、Transaction Isolation 有TRANSACTION_NODE  事务节点 、TRANSACTION_READ_UNCOMMITTED事务未提交读、TRANSACTION_READ_COMMITTED事务已提交读 、TRANSACTION_SERIALIZABLE事务序列化 、DEFAULT默认、TRANSACTION_REPEATABLE_READ事务重复读、编辑等选项,默认为default    默认即可
9、Keep-Alive    是否保持连接,默认为true  默认即可
10、Max Connection age (ms)  最大连接时长,超过时长的会被拒绝,默认为5000
11、 Validation Query    验证sql语法,默认为select1
12、Database URL 数据库url,可以带上字符集,比如jdbc:mysql://10.199.132.12:3306/xqy-portal?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
13、JDBC Driver class    JDBC的类,默认为空,必填,mysql一般输入com.mysql.jdbc.Driver
14、Username 数据库的用户名
15、Password 数据库的密码

3、添加JDBC Request,线程组右键—添加—Sampler—JDBC Request

添加JDBC Request

4、JDBC Request配置

JDBC Request配置

具体JDBC Request配置项说明如下:

1、Variable Name 和上面JDBC Connection Configuration中的Variable Name保持一致
2、Query type    主要包括:Select 、Update、Callable Statement、Commit、Rollback选项,详见下文使用方法
3、Parameter values  默认为空,填写sql中要添加的数据,也可以参数化
4、Parameter types : 默认为空,赋值参数的数据类型,需与Parameter values对应起来,并以逗号隔开
5、Variable Name :   默认为空,自定义值,供其他接口调用返回值,详见下文使用方法
6、Result variable name :    把sql执行结果保存到一个数组中
7、Query timeout(s) :    定义查询超时时间,单位s,默认为空

SQL Query的Query Type使用方法:

1、多个查询语句(不使用参数的情况下)可以放在一起顺序执行,需要设置Query Type为:Callable Statement,然后顺序输入select语句,不用加go或者分号。如果Query Type设置为:Select Statement的话,只执行第一个SQL语句;

2、如果SQL语句中需要使用参数变量,那么Query Type 需要设置为:Select Statement ,需要先添加Random Variable,然后在Parameter Values中输入{变量名称},中间用逗号分隔。只能执行第一个SQL语句;

3、对于Insert、Update、Delete语句,需要设置Query Type为:Update Statament.数据修改语句中可以使用参数,而且可以顺序执行多个修改语句;

4、Commit是将SQL Query执行后马上提交,使用这个选项时JDBC Connection Configuration中的Auto Commit选项为False。

Variable Name使用方法:

jmeter官网给的解释是:如果给这个参数设置了值,它会保存sql语句返回的数据和返回数据的总行数。假如,sql语句返回2行,3列,且variables names设置为A,B,C,那么如下变量会被设置为:
  A_#=2 (总行数)
  A_1=第1列, 第1行
  A_2=第1列, 第2行
  C_#=2 (总行数)
  C_1=第3列, 第1行
  C_2=第3列, 第2行
如果返回结果为0,那么A_#和C_#会被设置为0,其它变量不会设置值。
如果第一次返回6行数据,第二次只返回3行数据,那么第一次那多的3行数据变量会被清除。
可以使用{A_1}...来获取相应的值

Result variable name使用方法:

如果给这个参数设置值,它会创建一个对象变量,保存所有返回的结果,获取具体值的方法:

columnValue = vars.getObject("resultObject").get(0).get("Column Name")

JMeter连接数据库的相关操作相关推荐

  1. 2021年大数据HBase(五):HBase的相关操作JavaAPI方式

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 前言 HBase的相关操作-JavaAPI方式 一.需求说明 ...

  2. 2021年大数据HBase(四):HBase的相关操作-客户端命令式!【建议收藏】

    全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 前言 HBase的相关操作-客户端命令式 1.进入HBase ...

  3. 2021年大数据Spark(二十五):SparkSQL的RDD、DF、DS相关操作

      目录 RDD.DF.DS相关操作 SparkSQL初体验 SparkSession 应用入口 获取DataFrame/DataSet 使用样例类 指定类型+列名 自定义Schema ​​​​​​​ ...

  4. 【数据结构】二叉树及其相关操作

    二叉树的定义 二叉树是一个由结点构成的有限集合,这个集合或者为空,或者由一个根节点及两棵互不相交的分别称作这个根节点的左子树和右子树的二叉树组成. 二叉树并非一般的树形结构的特殊形式,它们是两种不同的 ...

  5. Linux之用户组相关操作 groupadd groupdel

    Linux之用户组相关操作  groupadd  groupdel 1. 创建用户组 命令 说明 groupadd 创建(添加)用户组 创建用户组效果图: [grep是搜索功能,详情博文:https: ...

  6. Linux之用户相关操作

    Linux之用户相关操作 1. 创建用户  [创建后会立即让设置密码] 命令 说明 useradd 创建(添加)用户 useradd命令选项: 选项 说明 -m 自动创建用户主目录,主目录的名字就是用 ...

  7. java导入包大全_eclipse快速导入jar包的相关操作步骤

    eclipse怎样快速导入jar包呢?熟悉这款软件是非常简单的,今天小编就分享了关于eclipse快速导入jar包,有需要的朋友一起来看看吧! eclipse快速导入jar包的相关操作步骤 方法1·最 ...

  8. 顺序队列相关操作(C语言实现)

    #顺序队列相关操作(C语言实现) #include<stdio.h> #define Size 100 typedef int DataType; typedef struct {Data ...

  9. oracle log.xml分析,怎么在alert目录下的log.xml中关闭logminer的相关操作日志? — oracle-tech...

    Oracle版本10g-19c中,使用了logminer,但是在$ORACLE_SID/alert的目录下产生了大量的log_x.xml [email protected] alert]$ cd /o ...

最新文章

  1. 20172310 2017-2018-2 《程序设计与数据结构》第四周学习总结
  2. django的admin中显示为xxxx object以及元类Meta和__str__的使用
  3. golang map的无序性验证
  4. qq手机电脑消息同步_这届用户换机首选必备工具,QQ同步助手一键迁移手机资料...
  5. 宝塔面板如何部署Java项目教程【新版】
  6. DBeaver执行SQL脚本
  7. rust自创服务器_萌新教大家搭建Rust服务器(局域网和公网)
  8. 批量将PNG格式转化为JPG格式
  9. cass等距离等分线段的命令键_CAD等分线段指令是什么?
  10. 用EasyBoot轻松做启动光盘
  11. iOS GitHub上常用第三方框架
  12. 一起初学java,笔记记录的第五天:数组、排序和查找
  13. (压位)高精度乘法,高精度加法,高精度减法,高精度除法
  14. 兴衰成败三百年:俄罗斯数学的光荣与梦想
  15. 探针一号的SQL注入学习笔记
  16. 微信更新,干掉手机输入法!
  17. vue3:父子组件传值
  18. 关于DBC文件的格式解析(DBC文件系列其二)
  19. AMD的GPU拿来跑深度学习?Rocm3.0Pytorch@Ubuntu16编译实录
  20. 函数getopt(),及其参数optind

热门文章

  1. 鸿蒙珠融入体内,斗罗大陆同人小说排行榜。第一名:《斗罗大陆之超级无敌》:主角...
  2. 【框架学习】spring 事务处理原理
  3. java mp4视频转换成h5_前端canvas动画如何转成mp4视频的方法
  4. 移动号网络运营商无服务器,【分享】亲身经历:解决移动4G无信号无服务的问题...
  5. python discuz发帖_python:Discuz发帖器的实现
  6. 画质、码率、帧数、分辨率、体积的基础编码知识
  7. 小牛电动递交招股书:拟募资1.5亿美元 李一男持股44%
  8. sharelatex(Overleaf)的安装与使用
  9. 高频故障-新电脑/新系统只有一个回收站图标(win10)
  10. python的金融计算器_【长期不定时更新】用Python实现金融计算器的部分功能