51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4825|回复: 6
打印 上一主题 下一主题

[求助] LoadRunner测试mysql性能实践。。。

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-5-2 16:48:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近公司突然换了mysql数据,并将mysql性能测试问题交给了我,本人以前也没有接触过mysql和LoadRunner,都是摸着石头过河。经过一段时间探索现将一些心得记录如下,请高手指点不足之处。(下面说的都是在windows环境下)

测试mysql性能就是观察一些global status信息以及所在系统的性能表现(吼吼我现在这么认为的,请高手指点),所以根据网上前辈的一些经验,找到了下面两种方法:
方法一:使用工具SpotlightonMySQL,关于这个工具网上的资料只有手册,我还在学习。到官网上下载最新的版本,不然会提示ODBC连接失败。

方法二:使用LoadRunner,可以利用sitescope,也可以自己写脚本。关于使用sitescope就不多说了,网上都有说明。主要说一下自定义脚本,首先编译dll文件,设置vs2005编译环境,将my_alloc.h、my_list.h、mysql.h、mysql_com.h、mysql_time.h、mysql_version.h拷贝到工程目录下,工程中添加libmysql.lib。
dll中原程序:
。。。。。。
extern "C" int _declspec(dllexport) get_mysql_query_data(char *str_query,char *str_data)
{
    unsigned long u1_numrow=0;
    unsigned int i_index = 0;
p_res_ptr=mysql_use_result(conn);
if(p_res_ptr){
  while((sqlrows=mysql_fetch_row(p_res_ptr))){
    if(*sqlrows[0]=*str_query)                   //此处不能直接判断两个字符串相等,可用if(!strcmp(sqlrows[0],str_query))
   {
    strcpy(str_data,sqlrows[1]);
    }
  }
}
return NULL;
}
。。。。。。
编译时可能还会提示一个什么错误,上网查一下原因即可。

LoadRunner中代码:
。。。。。。
       for(;;)
       {
            get_mysql_query_data("Qcache_hits",str_data);
            i=get_mysql_table_query("show status like \'qcache%\'");    //应该和上面一条语句颠倒了
            lr_output_message("%d",i);
            x = atof(str_data);                                     //不知道为什么在我的LoadRunner里转换的数不对,要用atol才行
            lr_user_data_point("hits",x);
            lr_think_time(5);
       }
。。。。。。


dll编译之后,在LoadRunner里调用即可得到Qcache_hits的值。
同样道理可以添加任何你想要看的status值。


有个疑问请高手解答一下:监测mysql的status参数时候,选择什么样的频率,观察多长时间合适?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2010-5-2 23:25:23 | 只看该作者
学习!!!!!!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2010-5-4 10:32:57 | 只看该作者

回复 1# 的帖子

测数据库用LR不够专业,相关测试指标也很少;建议用第一种方法;
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2011-1-13 14:31:18 | 只看该作者
学习了
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2022-5-8 19:23
  • 签到天数: 137 天

    连续签到: 1 天

    [LV.7]测试师长

    5#
    发表于 2011-1-15 10:24:04 | 只看该作者
    mysql自已带有性能测试工具的啊
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2012-2-17 15:34:07 | 只看该作者
    关注中……
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2012-9-2 14:21:55 | 只看该作者
    营养贴,可很老了。我也正在做MYSQL方面的测试。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 07:36 , Processed in 0.073985 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表