jmeter 数据库连接配置 JDBC Connection Configuration

jmeter 从数据库获取变量信息

官方文档参考: [jmeter安装路径]/printable_docs/usermanual/component_reference.html#JDBC_Connection_Configuration

  • 引入数据库连接:

    MySQLjar包存放至jemter指定目录(/apache-jmeter-3.3/lib

  • jmeter 组件:

    • JDBC Connection Configuration
    • JDBC Sampler

数据库相关组件:

  • JDBC Connection Configuration 配置数据库连接的相关信息,包括数据库驱动类、数据库连接 URL、用户名和密码等。

    关键配置:

    • Variable Name for created pool:连接池的变量名,可自行定义,执行SQL时通过该变量名于数据库建立连接

    • Database Connection Configuration数据库连接配置:

      • Database URL:不同类型数据库类型会有差异

      • JDBC Driver Class:选择对应的驱动类

      • Username:用户名

      • Password:密码

  • JDBC Sampler 配置要执行的 SQL 查询语句。


    关键参数:

    • Variable Name of Pool declared in JDBC Connection Configuration:连接池绑定到的JMeter变量的名称。这必须与JDBC连接配置的" Variable Name "字段一致。执行SQL时使用的数据库连接变量名

    • SQL Query:

      • QueryType 查询类型:

        类型 适用场景
        Select Statement 选择语句
        Update Statement Update语句-也可用于插入和删除
        Callable Statement 可调用语句
        Prepared Select Statement 准备好的Select语句
        Prepared Update Statement 准备好的更新语句-也可用于插入和删除
        Commit 提交
        Rollback 回滚
        Autocommit(false) 自动提交(false)
        Autocommit(true) 自动提交(true)
    • Variable Names:SQL查询出的结果,逗号分隔的变量名列表。

      变量列表必须与调用返回的 OUT 参数的顺序相同。

      如果变量名少于 OUT 参数,则线程上下文变量中存储的结果数应与提供的变量名相同。

      如果存在的变量名多于 OUT 参数,则将忽略多余某年
      示例中有该变量的演示

    • Result Variable Name: SQL查询出的的结果保存到指定的对象,这是一个包含行映射列表的Object变量。每个映射都包含作为键的列名和作为值的列数据 示例中有该变量的演示

实例JDBC Connection Configuration.jmx 下载地址 提取码:gpex:

从数据库中查询表的ID、SEND_TO两列的数据,然后通过beanshell 打印出来。

1. 解析Variable Names

  1. 解析Result Variable Name

ps 数据库的默认端口:

  • 关系型数据库

    数据库名 端口号
    MySQL 3306
    SQL Server 1433
    Oracle 1521
    DB2 50000
    PostgreSQL 5432
    PointBase 9092
  • 非关系型数据库

    数据库名 端口号
    MongoDB 27017
    Redis 6379
    Memcached 11211

不同数据库对应的类及数据库链接格式:

MySQL

复制代码
Driver class
    com.mysql.jdbc.Driver
Database URL
    jdbc:mysql://host[:port]/dbname

PostgreSQL

复制代码
Driver class
    org.postgresql.Driver
Database URL
    jdbc:postgresql:{dbname}

Oracle

复制代码
Driver class
    oracle.jdbc.OracleDriver
Database URL
    jdbc:oracle:thin:@//host:port/service OR 
    jdbc:oracle:thin:@(description=(address=(host={mc-name})(protocol=tcp)(port={port-no}))(connect_data=(sid={sid})))

Ingress (2006)

复制代码
Driver class
    ingres.jdbc.IngresDriver
Database URL
    jdbc:ingres://host:port/db[;attr=value]

Microsoft SQL Server (MS JDBC driver)

复制代码
Driver class
    com.microsoft.sqlserver.jdbc.SQLServerDriver
Database URL
    jdbc:sqlserver://host:port;DatabaseName=dbname

Apache Derby

复制代码
Driver class
    org.apache.derby.jdbc.ClientDriver
Database URL
    jdbc:derby://server[:port]/databaseName[;URLAttributes=value[;...]]
相关推荐
测试杂货铺2 天前
Jmeter(六):json断言元件,jmeter参数化实现
jmeter·json
Moshow郑锴14 天前
JMeter API 并发性能测试计划JMX文件解析
jmeter
qq_49244844614 天前
java项目打包成jar包,并给jmeter使用
java·jmeter·jar
kanyun12315 天前
Jmeter使用过程中的一些总结
jmeter
無_爲15 天前
JavaEE:使用JMeter进行接口并发测试
java·jmeter·java-ee
cllsse16 天前
jmeter学习
jmeter
明月与玄武16 天前
JMeter 高阶玩法:分布式压测的技术核心技术要点
jmeter·分布式压测
会又不会17 天前
JMeter-SSE响应数据自动化3.0
jmeter·自动化
软件测试大叔17 天前
Jmeter ServerAgent在arm环境启动报错no libsigar-aarch64-linux.so in java.library.path
jmeter
心灵宝贝18 天前
Apache JMeter 2.9使用教程:压力测试入门步骤详解
jmeter·apache·压力测试