WEB开发网
开发学院数据库Oracle Oracle 11g数据库重放教程(三):复杂任务的负载... 阅读

Oracle 11g数据库重放教程(三):复杂任务的负载重放全程讲解

 2008-09-02 12:46:49 来源:WEB开发网   
核心提示: 准备捕获负载:现在我们的源数据库环境已经就绪了,我将启动一个真实的负载捕获,Oracle 11g数据库重放教程(三):复杂任务的负载重放全程讲解(2),Listing 3.1(见附件)显示了我如何使用存储过程DBMS_WORKLOAD_CAPTURE.ADD_FILTER应用一些过滤器来排

准备捕获负载:现在我们的源数据库环境已经就绪了,我将启动一个真实的负载捕获,Listing 3.1(见附件)显示了我如何使用存储过程DBMS_WORKLOAD_CAPTURE.ADD_FILTER应用一些过滤器来排除那些产生“不感兴趣”活动的用户会话以及在捕获过程中可以忽略的会话,在本例中,我比想捕获EM控制台自身的活动。

开始捕获:Listing 3.2(见附件)显示了我是如何使用存储过程DBMS_WORKLOAD_CAPTURE.START_CAPTURE启动负载捕获的,这个存储过程首先检查目标目录(DBRCONTROL)中是否有以前执行负载捕获的文件,如果有,它会返回一个错误,并且不允许捕获继续,然而,只要捕获启动成功,DB10G数据库的警报日志将会识别出一个DBR捕获操作正在进行:

  . . .
Mon Jun 23 19:40:41 2008
alter SYSTEM SET pre_11g_enable_capture=TRUE SCOPE=BOTH;
Mon Jun 23 19:40:44 2008
DBMS_WORKLOAD_CAPTURE.START_CAPTURE(): Starting
database capture at 06/23/2008 19:40:44
. . . 

因为我正在一个Oracle 10gR2数据库上捕获,在开始捕获前,我将动态初始化参数PRE_11G_ENABLE_CAPTURE设置为TRUE。

生成负载:为了模拟不同用户相似代码的并行执行,我准备一个shell脚本(10gSI_RandomLoadGenerator.sh),它与本系列前面文章中的shell脚本类似,它启动大约80个用户会话随机执行一些简单的CPU密集型计算的查询,在AP方案上生成复杂的查询,执行往AP方案表中插入几千行数据的DML操作。

同时,我将DB10G数据库配置为只使用一个服务名(DB10G),不考虑操作的类型,并且在我的TNSNAMES.ORA配置文件中添加了这个服务名。(在后面的步骤中,在Oracle 11gR1 RAC环境中我将描述如何使用DBMS_WORKLOAD_REPLAY.REMAP_CONNECTION重新映射这个连接到不同的服务名)

上一页  1 2 3 4 5 6 7  下一页

Tags:Oracle 数据库 教程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接