测试mysql数据库的方法_MySQL数据库性能测试的方法

前置条件:

安装系统:windows 7 64

mysql-installer-community-5.6.35.0

jdk1.6.0_45

apache-jmeter-3.1

Mysql odbc驱动:mysql-connector-odbc-5.1.7-win32.msi

Mysql jdbc驱动:mysql-connector-java-5.1.7-bin.jar

使用Jmeter JDBC Request方式实现

1.

打开JMeter,点击测试计划,点击“浏览...”按钮,将你的JDBC驱动添加进来。

df62f6de6e3a504ddb063c98b8ee31e4.png

2.

添加一个线程组,

右键点击“线程组”,在下面添加一个“JDBC Connection Configuration”

3e087839bae967319f7046f76f94c2c6.png

来配置一下JDBCConnection Configuration页面。

0bdcd2bebfb11370293f69c0bff71d99.png

3.

右键点击“线程组”,在下面添加一个“JDBC request”,并配置请求信息;

d3ea48a0e130715fd365694cde5a8825.png

e479076ad49827b4f4fb986e9ecaef17.png

4.

添加断言。

右键点击线程组---->添加--->断言---->响应断言。

1845d36835d84ee924854cee03ac37aa.png

5.

我们来添加一些监听器来行查看(根据实际的需要配置监听器)

添加一个断言结果:

右键点击线程组---->添加--->监听器---->结果断言。

添加一个图形结果:

右键点击线程组---->添加--->监听器---->图形结果。

添加一个查看结果树:

右键点击线程组---->添加--->监听器---->查看结果树。

下面是添加所有东东的列表:

734b3390679081f43208f53099450cbe.png

6.

在线程组页面设置用户数、启动时间、循环次数

点击菜单栏“运行”----“启动”

下面是结果:

7d8d99c4b4d567e47fc00ae031f4a0c8.png

其它的结果图片就不贴了......

使用lr_db_xxxx系列函数方式实现

1.      安装MySQL ODBC驱动

在网上下载一个是MYSQL数据库的ODBC驱动程序:mysql-connector-odbc-5.1.7-win32.msi(已上传),以默认选项安装该文件。]

6facc3abcf83b2eb908f465f45ebc9ff.png

168ef9e7d6b0a8e9792582edb60b0036.png

927d9b7e930fae664c730af0ebcdf9f0.png

2.2

打开数据源:开始->设置->控制面板->找到数据源,或者直接访问数据源启动配置路径

89d105693ee99e4fde8819cd43b5b139.png

3.3

打开数据源(ODBC),在用户DSN选项卡中点击“添加”按钮,弹出“创建新数据源”窗口。

2709084fda0febd6bc8fcde506a55ff6.png

4.4

选中“MYSQL ODBC 5.1Driver”,点击“完成”按钮。

cea61aae0cda589c8cd5241b409f8225.png

5.5

弹出新窗口,在login选项卡中填写数据源信息。

Data Source Name 数据原名称;

Discription 描述(选填);

Server 数据源计算机的IP;

User 数据库用户名;

Password 数据库密码;

DataBase 数据源所要连接的数据库;

24bdfde7d08d2f2037658b8056d1ab57.png

6.6

配置完后,点击“test”按钮,如果出现如下提示,即配置成功。

681bf84e1df57be507c7f34235eb5bb0.png

步骤阅读

点击“OK”返回用户DSN选项卡,增加一条记录,名为你所配置的数据源名称。

75ea265036181d2a06e9af3c91134a51.png

到此 Mysql ODBC驱动安装配置成功。

2.启动Loadrunner的Virtual Vuser Generator ,创建Web Services协议脚本(因为lr_db_xxxx类函数只支持web services协议)

3147491b7b8cf65f046252f4b1a09800.png

3、根据实际需要编写脚本

1)lr_db_xxxx相关函数参数细信息:

intlr_db_connect("StepName","ConnectionString=","ConnectionName=","ConnectionType=", LAST );

intlr_db_executeSQLStatement("StepName=","ConnectionName=","SQLStatement=",["DatasetName=",] LAST );

intlr_db_dataset_action("StepName=","DatasetName=", "Action=",LAST );

intlr_db_getValue("StepName=","DatasetName=","Column=", "Row=","OutParam=", LAST );

intlr_db_disconnect("StepName=","ConnectionName=", LAST );

2)具体的脚本实现方法

Action()

{

//打开连接,注意DRIVER就是上面安装的

int NumRows=0;

int i=0;

lr_db_connect("StepName=databaseConnect",

"ConnectionString=DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost;PORT=3306;DATABASE=test;USER=root;PASSWORD=012306;OPTION=3",

"ConnectionName=Mysql",

"ConnectionType=ODBC",

LAST);

lr_start_transaction("SQL");

//while(i<=5){

lr_db_executeSQLStatement("StepName=PerformQuery",

"ConnectionName=Mysql",

"SQLStatement=SELECT * FROM student",

"DatasetName=test",LAST);

//i++;

//}//执行SQL语句

/*lr_output_message(lr_eval_string("{idParam}"));*/

lr_end_transaction("SQL", LR_AUTO);

lr_output_message("The query returned %d rows.",NumRows);

lr_db_dataset_action("StepName=actionPrint",

"DatasetName=test",

"Action=PRINT",

LAST);//对数据库执行操作

/*while(i

lr_db_getvalue("StepName=GetValue",

"DatasetName=test",

"Column=sname", //字段名

"Row=next",

"OutParam=MyOutputParam",

LAST);

lr_output_message("The value is: %s",lr_eval_string("{MyOutputParam}") );

i=i+1;

}*/

lr_db_disconnect("StepName=disconnect",

"ConnectionName=Mysql",LAST);

//ConnectionName的值与lr_db_connect中的ConnectionName值要相同

//与数据库断开连接

return0;

}

543eeffdf636062eeeac780ae1f8ef80.png

3)调试执行脚本

d7434672de1f717493f9ab38776790f3.png

使用Loadrunner 11  Java Vuser协议JDBC链接方式实现

1.启动Loadrunner的Virtual Vuser Generator ,创建Java/Java Vuser协议脚本

38a81d6b3d4731e4123fd04ba7aa55af.png

2.根据实际需要编辑Mysql的请求链接、数据插入、修改、查询、删除脚本

/*

* LoadRunner JavaScript. (Build: _build_number_)

*

* ScriptDescription:

*

*/

import java.awt.List;

import java.sql.*;

import java.sql.DriverManager;

import java.sql.Statement;

import com.mysql.jdbc.Connection;

import lrapi.lr;

public class Actions

{

public intinit() throws Throwable {

return 0;

}//end of init

public intaction() throws Throwable {

intColumnCount;

intRowCount;

Stringdriver = "com.mysql.jdbc.Driver";

Stringurl = "jdbc:mysql://localhost:3306/test";

Stringuser = "root";

Stringpassword = "012306";

try {

Class.forName(driver);

lr.start_transaction("jdbc");

Connection conn = (Connection)DriverManager.getConnection(url,user,password);

if(!conn.isClosed())

{

System.out.println("数据库连接成功");

lr.start_transaction("search");

String sqls="select stu_id,sname,sage,ssexfrom student";  //sql语句

PreparedStatement ps = conn.prepareStatement(sqls);

ResultSet rs = ps.executeQuery();

lr.end_transaction("search",lr.AUTO);

while(rs.next()){

ResultSetMetaData rsmd = rs.getMetaData();

ColumnCount = rsmd.getColumnCount();

rs.last();

RowCount = rs.getRow();

System.out.println("结果集的列数:" + ColumnCount);

System.out.println("结果集的行数:" + RowCount);

}

ps.close();

conn.close();

}

lr.end_transaction("jdbc",lr.AUTO);

}

catch(ClassNotFoundException e)

{

System.out.println("数据库驱动程序没有找到");

e.printStackTrace();

}

catch(SQLException e)

{

e.printStackTrace();

}

return 0;

}//end of action

public int end()throws Throwable {

return 0;

}//end of end

}

72308f504f8fa3520c94a9862a4036b1.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值