首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Oracle频道
中国IT教育
Google
首页 入门基础 安装配置 体系架构 PLSQL 备份恢复 性能调优 开发技术 资讯动态 考试认证 下载 专题 讨论
您现在的位置: 中国IT实验室 >> Oracle >> 性能调优 >> 正文

Oracle 11g数据库重放教程(二):负载重放基本实例讲解

    Oracle 11gR1提供了捕获生产环境中应用程序的负载,并在测试环境中重放负载的能力,利用这种技术判断当对系统、数据库或应用程序修改后在性能方面的影响有多大,在本文中,我将描述Oracle 11g数据库重放功能如何从当前的生产数据库中(p+0环境)捕获和准备负载,以及如何在一个Oracle 11g测试环境(作为下一个p+1数据库系统)重放相同的负载,这种技术使Oracle DBA有机会分析和隔离对性能有害的改变。

    这篇文章主要集中讲述如何:

◆从一个Oracle 11g数据库捕获一个真实的负载
◆捕获对应的自动负载仓库(AWR)数据
◆为最后的负载重放准备测试数据库环境
◆传输生产环境配置到测试环境
◆预处理生产负载
◆在测试系统上重放负载
◆分析发现的任何性能问题和分歧

模拟应用程序环境

    本文中关于我的测试环境有一点需要说明:为了简化过程,捕获和重放操作都使用相同的数据库。我使用的是最基本的Oracle 11g种子数据库和默认安装的样本方案。数据库将运行在带闪回日志功能的ARCHIVELOG模式下,以便需要重放时可以快速地利用FLASHBACK DATABASE命令回退到某个初始点。

第一阶段:录制负载

    ◆为了建立一个捕获/重放情景,我建立了一个新用户、表、索引和相关的PL/SQL对象:

    ◆一个新用户ADMIN,它将被用作存储所有管理对象的一个仓库,同时,我还创建了一个表存储主键的值。创建该用户和表的代码请参考附件A:ADMINSetup.sql.

    ◆PL/SQL包ADMIN.PKG_SEQUENCING控制指定新的主键值,该包的说明参考附件B:pkg_sequencing.spc,该包最初的版本内容参考附件C:pkg_sequencing_v1.bdy.

    ◆另一个用户AP,它将封装一个帐户支付系统的方案,包括新的表AP.VENDORS,AP.INVOICES和AP.INVOICE_ITEMS,创建这个方案及其相关的对象脚本参考附件D:APSetup.sql.

    ◆为了填充AP方案的对象,我创建了一个包AP.PKG_LOAD_GENERATOR,它的说明文件和主体文件分别参考附件E:pkg_load_generator.spc和附件F:pkg_load_generator.bdy.

    ◆最后,APInitialization.sql中的代码用几百行模拟数据填充了表AP.VENDORS,并在表AP.INVOICES中创建了25条发票记录,在表AP.INVOICE_ITEMS中创建了与之对应的发票详细信息条目,收集了ADMIN和AP方案下所有对象的原始统计信息,它还创建了一个目录对象DBRControl,用于数据库重放时存储结果脚本和捕获负载期间产生的XML文件。

[1] [2] [3] [4] [5] [6] [7] 下一页

【责编:Chuan】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·关于Java框架技术专题
 ·XML全攻略技术专题
 ·JAVA开源技术介绍专题
 ·Java嵌入式开发之J2ME技术专题
 ·超前体验 Oracle 11g的5个新特性…
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题…
 ·展现C#世界 C#程序设计专题…
 ·Java入门 Tomcat的配置技巧精华专题…
 ·Oracle RMAN物理备份技术详解…
 今日更新
 社区讨论
 博客论点
 频道精选
 Oracle频道相关导航