jmeter对数据库进行简单的压测
1、点击测试计划,再点击“浏览”,把JDBC驱动添加进来:
注:JDBC驱动一般的位置在java的安装地址下,路径类似于: \java\jre\lib\ext
文件为:mysql-connector-java-5.1.39-bin.jar
没有这个文件的话,可以去网上下载,然后放到上面的路径下;也可以把驱动放到 jmter-bin 目录下。
2、添加一个线程组,命名为”连接mysql”,设置线程数、启动时间、循环次数:

3、右键点击“连接mysql”,再添加一个配置元件:JDBC Connection Configuration

配置该元件----JDBC Connection Configuration:注意 :select 1 s可以大写,但必须空格1,否则报错,还有查询的格式要正确
相关参数
select 1
# ? 后拼接的参数为 编码(增改会涉及到编码的问题) & 允许执行多条sql
jdbc:mysql://localhost:3306/test1907?characterEncoding=utf-8&allowMultiQueries=true
com.mysql.jdbc.Driver
root
root
除了test1907是数据库名,其他都是固定写法。

4、右键点击“连接mysql”,再添加一个采样器:JDBC request

配置该采样器:
Query Type选择
Query Type选择不当会报下面的错误:
Can not issue data manipulation statements with executeQuery().
(1)Select Statement------执行select语句,且只执行一条
(2)Update statement------执行insert、update、delete语句,且只执行一条(插入、修改、删除)
(3)callable Statement------sql语句有变量,以及多条 的时候选择
(4)prepared select statement ------ (欲状态通道) 执行select语句,执行多条。
(5)prepared update statement ------ (欲状态通道) 执行insert、update、delete语句,执行多条。
(6)commit ------ 提交
(7)rollback------回滚
(8)auto commit(F) ------ 自动提交,默认为false


select * from student where sno =108;
查询语句中的where条件可以使用 用户定义的变量 (或csv文件) 批量实现
select * from student where sno = ${sno};
欲状态通道的处理方法

当然,参数值可以使用常量,如108,也可以使用变量,如${sno1},
这就需要我们添加一个用户定义的变量


以上两张图之间的变量指针关系如下:
?------>${sno1}------>son1------>105
?------>${sno2}------>son2------>108
5、添加监听器,添加一个图形结果,一个查看结果树,一个聚合报告:

6、运行,并查看结果:



**********************************************************************
八JMeter对Oracle数据库进行压力测试
(6) 在Database Connection Configuration输入数据库配置信息
例如:Database URL: jdbc:oracle:thin:@192.168.1.168:1521:ptoracl
格式为:Database Url:连接postgresql的配置,格式:jdbc:postgresql://ip:port/dbname,如 jdbc:postgresql://10.21.11.11:5432/testdb
这个地方要注意一下,如果没有jar包或jar包的版本不对,会提示“could not load 'org.postgresql.Driver'”。
根据自己机器安装的jdk版本(如我的是1.8.1,下载JDBC4.2的版本),下载对应版本的jar包,如果下载版本不对,可能会出现上述错误。
十、mysql数据的配置:

十一,mysql 插入数据:


十二、mysql参数化:

十三:数据库驱动类和URL格式:列如mysql:jdbc:mysql://localhost:3306/jmeter ip加端口号和数据库
|
数据库 |
驾驶员等级 |
数据库URL |
|
MySQL |
com.mysql.jdbc.Driver |
jdbc:mysql://host:port/{dbname} |
|
PostgreSQL |
org.postgresql.Driver |
jdbc:postgresql:{dbname} |
|
Oracle |
oracle.jdbc.driver.OracleDriver |
jdbc:oracle:thin:@//host:port/service OR jdbc:oracle:thin:@(description=(address=(host={mc-name}) (protocol=tcp)(port={port-no}))(connect_data=(sid={sid}))) |
|
Ingres (2006) |
ingres.jdbc.IngresDriver |
jdbc:ingres://host:port/db[;attr=value] |
|
MSSQL |
com.microsoft.sqlserver.jdbc.SQLServerDriver 或者 net.sourceforge.jtds.jdbc.Driver |
jdbc:sqlserver://IP:port;databaseName=DBname 或者 jdbc:jtds:sqlserver://localhost:1433/"+"library" |
jmeter对数据库进行简单的压测的更多相关文章
- 软件性能测试分析与调优实践之路-JMeter对RPC服务的性能压测分析与调优-手稿节选
一.JMeter 如何通过自定义Sample来压测RPC服务 RPC(Remote Procedure Call)俗称远程过程调用,是常用的一种高效的服务调用方式,也是性能压测时经常遇到的一种服务调用 ...
- Jmeter 在linux下的分布式压测
Jmeter 在linux下的分布式压测 0.将 windows机器作为master 控制机(同时也兼做负载机slave), linux机器作为 负载机 slave. 1.linux环境安装 : (1 ...
- jmeter做简单的压测
一.JMeter概述jmeter除了可以做借口测试外,还可以做压力测试:首先介绍jmeter中各个组件在压力测试中扮演的角色 1)线程(Threads(Users))即虚拟用户,线程组里可设置需要模拟 ...
- jmeter简单的压测案例——访问百度并发5,持续请求15
好记性不如烂笔头,还是记记吧. jmeter压测的指标有很多,先从简单的入手,下一章节再讲解jmeter组件的作用. 需求是:访问百度的压测指标是:10s内并发5,持续15次请求.那么需要设置以下几点 ...
- 使用jmeter做简单的压测(检查点、负载设置、聚合报告)
1.添加断言(检查点) 在需要压测的接口下添加--断言--响应断言,取接口响应中包含有的数据即可 检查点HTTP请求-->断言-->响应断言1.名称.注释2.Apply to//作用于哪里 ...
- JMeter压力测试,http请求压测,5分钟让你学会如何压测接口!
JMeter压力测试 官网:https://jmeter.apache.org 最新款的jmeter需要java8的支持,所以请自行安装jdk8.这里就不啰嗦了. 可以根据自己的系统下载zip或者是t ...
- 【JMeter】JMeter完成一个java请求的压测
先定义一下我说的remoteService:即远程调用服务,没有http的url.不对外提供或者对外提供有限的服务.具体视各公司的代码架构所定,比如有些公司为web工程,scf服务,db.scf即为服 ...
- 【JMeter】(3)---MySQL压测
JMeter---MySQL压测 一.添加MySQL驱动jar包 在测试计划(Test Plan)页面添加jar包 二.添加MySQL连接配置 添加线程组右击-->添加(add)-->配置 ...
- 【JMeter】(2)---HTTP压测
JMeter---HTTP压测 一.创建线程组 右击-->添加-->Threads(Users)-->线程组 下面对比较重要的几个参数,讲解下: 名称: 就是给你这个线程组起名字. ...
随机推荐
- Java——日期获取和日期格式化
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
- 选择器&隔行换色
选择器的使用理解为:执行jQuery核心函数,传入选择器的字符串 $( ... ) 基本选择器 <!DOCTYPE html> <html> <head> & ...
- 快速复习C语言 - 1变量与运算符
变量与运算符 本篇以读者知道 int.char.float.double 等数据类型为前提条件. float 类型注意事项 float 类型数没有办法跟一个数真正比较是否相等,可以定义借助绝对值在一定 ...
- Rocket - debug - TLDebugModuleInner - COMMAND
https://mp.weixin.qq.com/s/Lz_D43YdhbRhiGiyoCBxDg 简单介绍TLDebugModuleInner中COMMAND寄存器的实现. 1. COMMANDRe ...
- elasticsearch中保存时间格式
利用logstash从文档中导入数据到es中,若未事先设定数据格式,有可能存储时间并未保存为date格式而是text格式. 时间若保存为text,则在会以字符串数组格式存储在es中,是乱序,不好查询. ...
- Java实现基础练习十进制转十六进制
基础练习 十进制转十六进制 时间限制:1.0s 内存限制:512.0MB 提交此题 锦囊1 锦囊2 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6, ...
- Java实现 LeetCode 449 序列化和反序列化二叉搜索树
449. 序列化和反序列化二叉搜索树 序列化是将数据结构或对象转换为一系列位的过程,以便它可以存储在文件或内存缓冲区中,或通过网络连接链路传输,以便稍后在同一个或另一个计算机环境中重建. 设计一个算法 ...
- Java实现 LeetCode 22 括号生成
22. 括号生成 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合. 例如,给出 n = 3,生成结果为: [ "((()))", &quo ...
- Java实现汉诺塔问题
1 问题描述 Simulate the movement of the Towers of Hanoi Puzzle; Bonus is possible for using animation. e ...
- java实现第七届蓝桥杯四平方和
四平方和 四平方和 四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0^2 + 1^ ...