zoukankan      html  css  js  c++  java
  • jmeter如何操作oracle数据库,连接oracle数据库

    jmeter是对服务器进行压测,当然也能对数据库服务器进行压测

    1、首先要下载一个数据库的驱动,也就是说,jmeter要连接数据库,那么jmeter中就要有一个对应数据库版本的驱动,来驱动数据库。我的理解,你要驱动别人做一些事情,你自己要了解这个人嘛,不了解他,怎么驱动他来帮你做这个事情呢,那驱动就是要根据这个人的品格啊,性格啊,生活习惯啊 各方面。这里就是根据数据库的版本来下载对应的驱动。

    查看数据库的版本:

    打开数据库,select * from v$instance;查询结果中的version就是数据库的版本。然后去官网https://www.oracle.com/database/technologies/jdbc-ucp-122-downloads.html,下载对应版本的驱动,如下;

    上面所说的是一种方式,还有另外一种方式。

    打开你电脑里面安装的数据库路径,例如我的电脑D: oolsPLSQL_Developer 12instantclient_12_2,找到一个ojdbc8.jar,如下:

     把这个包复制到jmeter安装目录下的lib中,

    2、配置jmeter

    首先,在测试计划中,添加ojdbc8.jar的路径,如下:

    其次,配置,右键添加

     配置jdbc connection configuration

     这里有几个要注意的地方

    Variable name for create pool是配置连接池的名字,随意写,但是后面jdbc request连接的时候也是填这个名字

    Validation query 如果是oracle的连接 是选择select 1 from dual,也不知道为啥,选就是了

    Database URL,数据库连接  jdbc:oracle:thin:@IP:端口:实例名,这些信息 可以在数据库中找到

     

     实例名也可以通过select * from v$instance;查询结果中的instance_name

    username是数据库的用户名

    password是数据库的密码

    3、建立jdbc request.在线程组下添加

    这里以根据staff_id来查询用户名为例

     

     通过以上配置,点击运行,绿色表示运行成功

    思考1:如果是多个参数,要怎么配置呢?类似于这种查询 select * from 表 where a='' and b='' and c=''即有多个参数

    很简单,在用户定义的变量中增加一个变量,查询语句中添加变量查询条件,参数类型中添加这个变量的类型。

     

     这里的变量类型,看值有多少个,有多少写多少个类型,否则会报number of arguments (2) and number of types (1) are not equal,参数和类型数量不相等。

    思考2:如果有多个值怎么办,比如要查询 select * from 表where staff_id in ('','')

     解决方案:添加多个变量值,同时变量个数的类型要加上,否则匹配不上

    踩到的坑总结:

    坑一:

     1、下载的数据库驱动版本不对,跟本地的数据库版本不匹配,这个时候再上官网确认一下

    2、是不是把jar包复制到lib下,jmeter没重启?

    3、配置中的database url是不是写错掉了

    坑二:

     一开始 我这里少了一个jdbc:就报了这个错

    坑三:

    1、我配置的jdbc request 中的query是这样的

     select username from uos_staff where staff_id=34849;

    把分号去掉,错误就没有了,请教开发,说是jdbc的连接是不能有符号的

    谢谢博主的分享https://www.cnblogs.com/wangxiaoqun/p/6677299.html?utm_source=itdadao&utm_medium=referral

    每天进步一点点 分享快乐
  • 相关阅读:
    判断是否在可视区域
    格式化数字10000,为10,000
    把数组(含有30项分成5组)
    排序
    enzyme 学习一
    golang使用sftp连接服务器远程上传、下载文件
    golang使用ssh远程连接服务器并执行命令
    一文弄懂vlan、三层交换机、网关、DNS、子网掩码、MAC地址的含义
    golang的序列化与反序列化的几种方式
    golang命令行参数解析
  • 原文地址:https://www.cnblogs.com/zhangyqn/p/11806431.html
Copyright © 2011-2022 走看看