Jmeter测试mysql数据库以及连接数据库操作步骤详解

实例:

1.添加线程组


2.在测试计划中添加 mysql-connector-java.jar 的包,点击Add directory or jar to classpath




3.添加 配置原件->JDBC Connection Configuration

 





Variable Name: 变量名称,需要变量名绑定到池。需要唯一标识。与JDBC取样器中的相对应,决定JDBC取样的配置。简单理解就是在JDBC request的时候确定去哪个绑定的配置。
MaxNumber of Connection: 数据库最大链接数
PoolTimeout: 数据库链接超时,单位ms
Idle Cleanup Interval (ms): 数据库空闲清理的间隔时间,单位ms
Auto Commit:自动提交。有三个选项,true、false、编辑(自己通过jmeter提供的函数设置)
Transaction Isolation:   事务间隔级别设置,主要有如下几个选项:(对JMX加解密) 
TRANSACTION_REPEATABLE_READ事务重复读、
TRANSACTION_READ_COMMITTED事务已提交读 
TRANSACTION_SERIALIZABLE事务序列
TRANSACTION_READ_UNCOMMITTED事务未提交读、
TRANSACTION_NODE  事务节点 、
DEFAULT默认、
编辑
Keep-Alive: 是否保持连接
Max  Connection age (ms):最大连接时长,超过时长的会被拒绝
Validation Query:验证查询,检验连接是否有效(数据库重启后之前的连接都失效,需要验证查询)
Database URL:如jdbc:mysql://localhost:3306/test,表示本地数据库,3306端口,请求访问的数据库名称为test,如果是远程数据库,例如数据库所在服务器IP为:192.168.11.120,请求的数据库名称为UserInfo,URL为dbc:mysql://192.168.11.120:3306/UserInfo
JDBCDriver Class: JDBC的类,如com.mysql.jdbc.Driver  
4.添加JDBC Request ,如: select name from UserInfo where sex="female" and age="20";

5.添加查看结果树,聚合报告。6.点击运行,运行结束后,查看结果。

连接步骤:

1.下载对应的驱动包(mysql-connector-java-5.1.13-bin.jar 可能现在有跟新的版本了),并放到Jmeter目录中的lib文件下
我共享一个到百度网盘: http://pan.baidu.com/s/1pJjXJzd
2.打开Jmeter,添加 JDBC Connection Configuration 元件,配置如下:
1)Varible Name: 这个是变量的名字,也就是说不能重复,
2) JDBC URL: jdbc:mysql://sjqacemmydb-vip:3306/idmdb
其中 sjqacemmydb-vip:3306,这个数据库的地址和端口号; idmdb,这个是测试的数据库名。
3) Driver Class org.gjt.mm.mysql.Driver  或者 com.mysql.jdbc.Driver
4) Username:这个数据库的登录名
5) password 这个是数据库的登录密码


3.添加JDBC Request元件,如下图:
Variable Name必须和JDBC Connection Configuration相同。Sql Query Type选取你的操作,在Query编写你需要的语句。 

注意:如果同时执行多个 sql语句时会报错。我们需要在 jdbc url中添加?allowMultiQueries=true 就可以了。不过必选注意你的 mysql的版本在4.1 上,jdbc的版本在 3.1以上才可以。


4.其它地方引用查询结果:
1)在JDBC Request元件中的Variable names中设置你的参数名,记得唯一值。
2)使用时在你需要的地方${定义的参数名_1}记得不管查询的结果是否是多条还是当条都得 加上_1才能 获取第一条,不加的话好像拿不到值



如果想知道怎么连接SQL,Jmeter文件夹中的 printable_docs\demos 中的JDBC-Pre-Post-Processor.jmx 脚本就是SQL链接的。
如下图: