Jmeter 数据库性能测试-JDBC Request(Oracle)

 

 

http://www.cnblogs.com/jackei/archive/2006/07/31/464001.html
 
 下载Oracle的jdbc数据库驱动包,注意Oracle数据库的版本,这里使用的是:Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production;

  一般数据库的驱动包文件在安装路径下:D:\oracle\product\10.2.0\db_1\jdbc\lib的位置上;数据库驱动包与数据库所在的操作系统平台无关,只与数据库版本有关,Linux上与Windows上对于同一个版本的数据库,使用的数据库驱动包是一样的;

  驱动ojdbc6.jar下载地址:http://www.oracle.com/technetwork/cn/articles/oem/jdbc-112010-094555-zhs.html

  场景:测试一个服务器的性能,要求查看向数据库内插入数据1000条/s的处理能力;

  按照以前的思路:通过编写java程序来循环插入数据,编写一个批处理文件来调用java程序。再通过LR的system()函数调用批处理文件来进行压力测试。

但用JMeter就很容易实现,过程如下:

前置条件:1.有库;2.库中有表,例如user_dyl(code,name);

要求:往数据库内大批量插入数据,1000条/s;

1、创建测试计划,将使用的数据库驱动包导入

也可以直接将ojdbc14.jar复制到Jmeter的lib目录下,ojdbc14.jar文件一般位于Oracle安装目录的jdbc\lib目录下,如D:\oracle\product\10.2.0\client_2\jdbc\lib;
再将该jar文件路径添加到classpath中。 
 

2、添加线程组,设置虚拟用户数、启动时间、循环次数

3、在线程下面创建JDBC Connection Configuration,设置相关信息

 

 jdbc:oracle:thin:@172.19.10.250:1521:db01  (可以参考PLSQL中配置 D:\oracle\product\10.2.0\client_2\NETWORK\ADMIN\tnsnames.ora)

oracle.jdbc.driver.OracleDriver

4、创建一个JDBC Request,我们需要对数据库做插入操作,注意值带''

 

 

如果是查询语句, Query type选择‘select statement’

5、添加监听器,我们这里选择添加”图形结果“、”查看结果树“,点击菜单栏【运行】——>【启动】,查看我们的运行结果

问题:
1. Response message: java.sql.SQLException: Cannot create PoolableConnectionFactory (ORA-00923: FROM keyword not found where expected

)
 配置SQL Server 2000数据库连接池时,属性validationQuery默认值为“select 1”,

而在Oracle数据库连接池中应设置为“validationQuery="select 1 from dual"”

 

 

2. 执行时提示:ORA-00911: invalid character。
确保你在JDBC Request里面的Query中输入的SQL语句是正确的。 
注意SQL 语句后面不需要分号,和mysql的有区别; 

3. 执行时提示:No Suitable Driver
在电脑上搜索一下 classes12.jar 这个文件,然后copyJMeterLib目录下。如果找不到classes12.jar这个文件,就找找classes12.zip文件,然后把扩展名改为jar 
posted @ 2021-04-06 10:03  xxm_2017  阅读(220)  评论(0编辑  收藏  举报