您的位置:首页 > 数据库 > MySQL

性能测试培训总结-loadrunner测试mysql 推荐

2012-07-29 13:57 295 查看

前言

网上很多文章都是基于windows的,或者是odbc链接的,如果当作练习可以,但实际测试的时候我们往往遇到的不是上述的情况,那么如何对mysql进行性能测试呢?

本文将已测试某条sql语句为例进行讲解,ok,下面正式开始。

Lr的mysqllib库

介绍

As most performance testers know passing data between multiple vUsers in scripts can be difficult, there may be occasions where you want to use a common set of data for multiple scripts or use data created by one script as input data for a subsequent script. Mercury developed Virtual Table Server (VTS) as a solution to this problem. Unfortunately, VTS has a number of major limitations, for example it is easy to close it down without saving data, it can't run as a service and it does not allow you to write SQL queries; instead you must use the functions provided, like lrvtc_retrieve_row() and lrvtc_query_row().

捏着鼻子读读上面的e文吧,虽然我也很方案,呵呵,还是比较简单的,大家看看把。

下载

可以到如下网址下载:
http://down.51cto.com/data/403722

安装

So easy,解压到你的loadrunner安装目录即可,是把解压后的include和bin目录放到loadrunner的安装目录哦!!!有不少童鞋可耻的直接把解压的loadrunner mysqllibs目录放到下面了,汗啊。

使用

不废话,直接上代码

Vuser_init

#define MYSQLSERVER "XXX.XXX.XXX.XXX" # mysql的ip

#define MYSQLUSERNAME "XXX"# 用户名

#define MYSQLPASSWORD "XXX"# 密码

#define MYSQLDB"XXX"# 数据库

#define MYSQLPORT "XXX"# 端口

#include "Ptt_Mysql.h"# 引入mysql lib的h文件

vuser_init()

{

return 0;

}


看看,简单吧,哈哈,接着往下走

Action

Action()

{

char chQuery[128];

MYSQL *Mconn;

lr_load_dll("libmysql.dll"); # 引入libmysql的dll

Mconn = lr_mysql_connect(MYSQLSERVER, MYSQLUSERNAME, MYSQLPASSWORD, MYSQLDB, atoi(MYSQLPORT));# connection mysql

sprintf(chQuery, "update 表名 set a=a+1 where id=123;"

);

lr_mysql_query(Mconn, chQuery);# 执行sql

lr_mysql_disconnect(Mconn);# close connection

return 0;

}


怎么样?还是很简单吧,就是定义点变量,然后在引入个dll,剩余的就是大家熟悉的sql了,这个是已update为例子的,select和insert大致一样,只需稍作修改即可,这里就不举例了。

至于vuser_end木有任何修改!

监控msyql

当然既然有测试,必然有监控,至于如何监控,我的blog里有不少方法,可以到http://xqtesting.blog.51cto查找。

这里我在多介绍几个命令:

l Show innodb status;

l Show processlist;

l Show open tables from db_name;

具体代表什么大家自己百度一下吧,很简单

小结

1、这个东西比较好用,非常赞一个,可以链接本地的或者远程的都ok

2、记得user要有一定权限哦

3、有时候会提示内存冲突,大家最好关闭其他软件,比如像QQ管家、foxmail等,小弟用的时候发现和这两个冲突

参考资料

http://www.bish.co.uk/forum/index.php?topic=50.0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息