JMeter访问数据库


1、访问数据库

1.1、配置数据库

  • 添加 》配置元件 》JDBC Connection Configuration
    JMeter访问数据库

1.2、访问数据库

  • 添加 》Sampler 》JDBC Request
    JMeter访问数据库

1.3、Debug Sampler

JMeter访问数据库

1.4、察看结果树

JMeter访问数据库

JMeter访问数据库

2、JDBC Connection Configuration

Validation Query:
验证数据库连接是否有效的简单查询语句。默认是JDBC驱动的"isValid()"方法,它适用于多种数据库。可以通过jmeter.properties中jdbc.config.check.query属性设置默认验证的sql语句

  • Hsqldb: select 1 from INFORMATION_SCHEMA.SYSTEM_USERS
  • Oracle: select 1 from dual
  • Db2 :select 1 from sysibm.sysdummy1
  • MySql :select 1
  • Microsoft SQL Server(MS JDBC driver) :select 1
  • PostgreSQL: select 1
  • Ingres: select 1
  • Derby: values 1
  • H2: select 1
  • Firebird: select 1 from rdb$database
数据库 JDBC driver class Database URL
MySQL com.mysql.jdbc.Driver jdbc:mysql://host:port/{dbname}
Oracle oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:user/[email protected]//host:port/service
PostgreSQL org.postgresql.Driver jdbc:postgresql:{dbname}
Ingres (2006) ingres.jdbc.IngresDriver jdbc:ingres://host:port/db[;attr=value]
DB2 com.ibm.db2.jdbc.net.DB2Driver jdbc:db2://127.0.0.1:5000/DBNAME
DB2 com.ibm.db2.jcc.DB2Driver jdbcUrl:jdbc:db2://127.0.0.1:5000/DBNAME
DB2 com.ibm.db2.jdbc.app.DB2Driver jdbc:db2://127.0.0.1:5000/yourDBName

3、JDBC Request

Query Type:
Select Statement:执行第一条查询语句
Updata Statement:执行第一条更新语句,包括insert、updata、delete
Callable Statement:执行多条sql语句
Prepared Select Statement:执行第一条带参数的查询语句
Prepared Updata Statement:执行第一条带参数的更新语句,包括insert、updata、delete
Commit:将未存储的sql语句结果写入数据库表
Rollback:撤销指定sql语句的过程
AutoCommit(true):无论何种情况,都自动提交将结果写入,结束当前事务开始下一个事物

3.1、执行多条sql

  • JDBC Connection Configuration中DataBase URL需加上allowMultiQueries=tre
    如jdbc:mysql://127.0.0.1:3306//mysql?allowMultiQueries=tre
  • sql结尾要用";"

3.2、通过结果集访问查询结果

JMeter访问数据库
添加 》Sampler 》BeanShell PostProcessor
JMeter访问数据库

3.3、通过传参访问数据库

Query Type为:Prepared Select Statement或Prepared Updata Statement时,sql语句不支持变量。
JMeter访问数据库