性能测试|JMeter连接数据库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 性能测试|JMeter连接数据库

jmeter连接mysql数据库

总体步骤如下:

  1. 下载mysql的jar包放入到jmeter的lib下,然后重启jmeter
  2. 配置JDBC Connection Configuration
  3. 配置JDBC Request
  4. 在请求中引用查询到的结果变量,可以结合计数器取每一个结果值:${__V(tname_${index})}

具体实施步骤

  1. 下载Mysql jdbc驱动包

尽量保证其版本和你的数据库版本一致,至少不低于数据库版本,否则可能有问题。

mysql官网下载地址:https://dev.mysql.com/downloads/connector/j/

JDBC驱动在mysql的官网下载:https://dev.mysql.com/downloads/file/?id=477058,不需要注册,直接点击左下角的小字

在这里插入图片描述

  1. 在测试计划下面把JDBC驱动包导入,如下图

在这里插入图片描述

  1. 线程组下添加一个配置元件JDBC Connection Configuration

在这里插入图片描述

  • Variable Name:自定义参数,在JDBC Request中会用到
  • Database URL:jdbc:mysql:// 数据库IP地址:数据库端口/数据库名称;jdbc:mysql://localhost:3306/mysql?serverTimezone=UTC&characterEncoding=utf-8,注意:?后面的serverTimezone=UTC&characterEncoding=utf-8不能缺少,否则会报时区错误。
  • JDBC Driver Class:com.mysql.jdbc.Driver
  • Username:数据库用户名
  • Password:数据库密码
  1. 在添加一个Sampler:JDBC Request

在这里插入图片描述

4.1 由于只需要在数据库中取一次数据,即 jdbc取样器只需要执行一次,可以使用仅一次控制器;如下图:

配置路径:逻辑控制器——仅一次控制器

在这里插入图片描述

  1. 运行之后,数据库会返回某一列下的数据

在这里插入图片描述

  1. 在http请求中引用tname变量名,如果有一列数据返回,引用变量的时候可以输入${tname_1},发送请求的参数值就是 周启元

在这里插入图片描述

variables names 参数使用方法:

Jmeter官网的解释是:如果给这个参数设置了值,它会保存sql语句返回的数据和返回数据的总行数。假如,sql语句返回2行,3列,且variables names设置为A,C,那么如下变量会被设置为:

A_#=2(总行数)

A_1=第1列,第一行;如上面的变量${tname_1};

A_2=第1列,第2行

C_#=2(总行数)

C_1=第3列,第1行

C_2=第3列,第2行

如果返回结果为0,那么A_#和C_#会被设置为0,其他变量不会设置值。

如果第一次返回6行数据,第二次只返回3行数据,那么第一次的6行数据变量会被清除

可以使用${A_#}、${A_1}...来获取相应的值

  1. 如果想循环数据库返回的值,可以使用计数器,加引用的变量${__V(tname_${index})};如下图

根据上方数据库返回的tname列下有9行数据,在计数器中最大值填入9,在输入一个变量名index;

在这里插入图片描述

在http请求中引用数据量返回的变量+计数器的变量:${__V(tname_${index})};

在这里插入图片描述

  1. 运行结果

在这里插入图片描述

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
10天前
|
关系型数据库 MySQL 数据库连接
Unity连接Mysql数据库 增 删 改 查
在 Unity 中连接 MySQL 数据库,需使用 MySQL Connector/NET 作为数据库连接驱动,通过提供服务器地址、端口、用户名和密码等信息建立 TCP/IP 连接。代码示例展示了如何创建连接对象并执行增删改查操作,确保数据交互的实现。测试代码中,通过 `MySqlConnection` 类连接数据库,并使用 `MySqlCommand` 执行 SQL 语句,实现数据的查询、插入、删除和更新功能。
|
25天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
3天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
42 25
|
29天前
|
前端开发 Java 数据库连接
Java后端开发-使用springboot进行Mybatis连接数据库步骤
本文介绍了使用Java和IDEA进行数据库操作的详细步骤,涵盖从数据库准备到测试类编写及运行的全过程。主要内容包括: 1. **数据库准备**:创建数据库和表。 2. **查询数据库**:验证数据库是否可用。 3. **IDEA代码配置**:构建实体类并配置数据库连接。 4. **测试类编写**:编写并运行测试类以确保一切正常。
54 2
|
1月前
|
SQL 监控 测试技术
一次压测引发的数据库CPU飙升...
一次压测过程中,当数据库的qps和tps都正常时,如果cpu利用率异常的高,应该如何排查?希望通过这篇文章,给你一些启发。
|
3月前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
3月前
|
JSON JavaScript 关系型数据库
node.js连接GBase 8a 数据库 并进行查询代码示例
node.js连接GBase 8a 数据库 并进行查询代码示例
|
3月前
|
数据库连接 数据库 C#
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(上)
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(上)
|
4月前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【10月更文挑战第1天】Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
207 3
|
24天前
|
缓存 网络协议
Jmeter如何对UDP协议进行测试?
`jmeter-plugins`是JMeter的插件管理器,用于管理和组织所有插件。访问[官网](https://jmeter-plugins.org/install/Install/)下载并放置于`lib/ext`目录下,重启JMeter后可在“选项”中看到插件管理器。
27 1
Jmeter如何对UDP协议进行测试?