转-使用LR测试Oracle数据库经验总结

上一篇 / 下一篇  2011-02-28 21:22:34 / 个人分类:LoadRunner

1、我将登录SQL*Plus的操作也录制在Action中,添加迭代运行会报错,提示如下:

Action.c(11): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=24309:
Action.c(11): Error:     ORA-24309: 已连接至服务器
Action.c(11): server_attach: ERROR, return-code=LRDE2009.  ServerHandle=OraSrv1, ServerID="customs"
Abort was called from an action.

解决办法:1、将登陆SQL*Plus的操作录制在vuser_init中;2、同时录制退出SQL*Plus的操作

2、测试压力上来以后,会有好多Vuser出现Error,具体报错如下:
Action.c(37): Error: lrdo_ora8_exec: "OCIStmtExecute" return-code=OCI_ERROR,error-code=00054:

解决方法:把lrd_ora8_exec(OraSvc1, OraStm<i>, 0, 0, &uliRowsProcessed, 0, 0, 0, 0, 0);
改为:lrd_ora8_exec(OraSvc1, OraStm<i>, 0, 0, &uliRowsProcessed, 0, 0, 0, 0, 1);

3、测试压力上来以后,会有好多Vuser出现Error,具体报错如下:
Action.c(13): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=12514:

解决办法:开启数据库服务器监听,启动数据库服务器。

4、测试压力上来以后,会有好多Vuser出现Error,具体报错如下:
Action.c(26): Error: C interpreter run time error: Action.c (26): Error -- Unresolved symbol : lrd_session_begin.

解决办法:在vuser_init中添加 #include "lrd.h"

5、测试压力上来以后,会有好多Vuser出现Error,具体报错如下:
Starting iteration 1.
Starting action Action.
Action.c(13): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=12541:
Action.c(13): Error: ORA-12541: TNS: 没有监听器
Action.c(13): server_attach: ERROR, return-code=LRDE2009. ServerHandle=OraSrv1, ServerID="lr"

解决办法:启动数据库服务器,开启listener。如果需要使用isqlplus的话,开启服务:$isqlplusctl start

6、测试压力上来以后,会有好多Vuser出现Error,具体报错如下:
Action.c(13): Error: lrdo_server_attach: "OCIServerAttach" return-code=OCI_ERROR, error-code=12514:
Action.c(13): Error: ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME
Action.c(13): server_attach: ERROR, return-code=LRDE2009. ServerHandle=OraSrv1, ServerID="lr"

解决办法:检查压力机Oracle客户端解析文件tnsnames.ora,确保正确配置了这个文件。
检查测试的数据库服务器,确保正确配置了监听,并已经开启。

7、 使用Controller产生负载,最后测试数据只有以下4条性能曲线:Running Vusers、Trans Response Time、Trans/Sec(Passed)、Total Trans/Sec(Passed)、其余的Throughput、HTTP Responses per Second、Connections等等性能统计项均显示为灰色,没有统计数据

解决办法:因为sqlplus.exe是一个win32程序,那么在测试的过程中只统计上面的四项,它不会统计Throughput这些Web测试才有的性能曲线。
所以,如果想对数据库服务器测试的更全面,这个时候就要使用isqlplus来发出查询。
1)在DB server上启动isqlplus服务:isqlplusctl start
2)启动VuGen,在客户端(压力机)启动isqlplus的Web页面
3)输入用户名、密码,我这里采用scott/tiger@lr
OK!录制完成之后,产生压力执行测试。顺利结束之后,可以看到如下曲线已经抓取出来了:
Throughput、HTTP Responses per Second、Connections
剩余的工作就是如何分析性能数据了。


TAG:

polly12052000的个人空间 引用 删除 polly12052000   /   2011-03-01 10:47:45
5
 

评分:0

我来说两句

Open Toolbar