Oracle性能测试以及各个参数配置

数据库
进行压力模拟的Oracle性能测试,及简单的sql脚本实例。如果你想更深入了解,可以看一看以下的报道。

以下是有关开发人员常用的用户压力模拟Oracle性能测试的经验:
1)压力测试过程中发现一些SQL脚本执行非常慢,进行了优化.
2)最好并发测试,否则服务基本上没有什么压力.
3)先从100用户开始,再慢慢向上加,直到CPU的承载达到90%以上.查看系统的性能情况,包括TPS,响应时间,和内存等.

还包括Oracle服务器的I/O流量和交易数。这个方案是参考了淘宝的机房性能测试方案,下面是性能测试的具体步骤:

Oracle性能测试主要是模拟大量的sql语句操作,来对数据库服务器进行加压。在测试前,需要准备以下要模拟的sql语句,测试脚本,并将测试控制机、测试加压机、被测数据库服务器准备妥当。

脚本协议选择oracle(2-Tier),将所有要模拟的sql语句放在一个sql文件内,使用sql-plus来操作数据库载入,使用 loadrunner来录制。录制好之后就是修改脚本了,首先在vdf.h文件中定义变量(static void FAR * OraBind1;),定义参数(
  static LRD_VAR_DESC UID =
  {LRD_VAR_DESC_EYECAT, 1, 10, LRD_DBTYPE_ORACLE, {1, 1, 0},
  DT_SF_STRIPPED_SPACES};)。

为什么要在这里定义而不直接只用参数化呢?因为那样会对加压机造成很大的压力,不利于测试。这里需要根据你的脚本来变化,你在脚本中使用了多少变量,多少参数,那么你就在要这里定义多少。接下来修改脚本的,将一次性的登陆登出放在init和end中,使用lrd_assign和 lrd_ora8_bind_placeholder命令替代参数,如

  lrd_ora8_stmt(OraStm6, "SELECT COUNT(*) as counter FROM ***** WHERE ***_id="
  ":U and ( status = 0 or "
  "status is null)", 1, 0, 0);
  lrd_assign(&UID , "{UID}", "", 0, 0);
  lrd_ora8_bind_placeholder(OraStm6, &OraBind1, "U", &UID , 0, 0, 0);

这样,脚本就差不多大功告成了。编译一下,没有问题就通过了^o^

将以上Oracle性能测试的脚本放在控制机上,就可以开始加压了,注意的是,被测数据库服务器的各个参数配置要记录下来,以便修改参数调优时能分析清晰。记录下数据库的iops,time,tps和响应时间,结果汇总出报告。

【编辑推荐】

  1. Oracle性能调整中的Shared pool tunning要点
  2. Oracle的SQL调优的目标描述
  3. Oracle数据库专家性能调整秘密揭晓
  4. Oracle索引聚簇表的数据加载的实操
  5. Oracle索引聚簇表的数据加载的创建
责任编辑:佚名
相关推荐

2022-11-02 08:05:09

2010-08-14 21:59:35

2009-11-16 11:28:07

Oracle性能测试

2010-04-12 10:54:13

Oracle性能测试

2023-03-21 14:59:18

2009-04-28 09:25:15

Oracle系统参数优化

2021-10-26 11:21:50

WindowsCeph性能

2021-11-14 15:13:18

存储数据存储技术

2010-04-26 13:47:02

Oracle性能调整

2023-05-15 07:40:13

大数据SQL语法

2020-07-06 12:04:18

浏览器内存测试

2010-04-28 17:06:40

Oracle RAC

2023-06-15 14:58:42

微软视觉搜索

2015-07-29 10:28:59

JVM参数配置参数

2011-03-15 16:34:36

Iptables性能

2021-08-06 06:38:49

安卓应用Android 性能测试

2011-04-08 17:33:07

Oracle性能

2011-04-11 14:56:09

Oracle性能
点赞
收藏

51CTO技术栈公众号