Oracle 11g数据库重放教程(一):数据库重放步骤
2008-09-02 12:45:36 来源:WEB开发网Oracle DBA很早就盼望能够在生产环境中捕获应用程序的负载,然后通过在测试环境中重放捕获的负载来判断数据库或应用程序的改动对数据库性能的影响,Oracle 11g数据库新的数据库重放特性使DBA可以捕获,处理负载,然后有选择性地或跨大范围的数据库环境和平台全部重放,本文为在日益不稳定的数据库环境中使用Oracle 11g数据库重放有效地快速预报应用程序的改变对性能的影响提供一个入门。
如果我在IT行业这几年教会了我一切,那它是继墨菲定律(凡事只要有可能出错,那就一定会出错)之后的又一真理了,过去的几年里,我认识到了多个墨菲定律推论的正确性,包括“替代的零件往往不能代用”及特别是“墨菲实际上是一个乐观主义者”的回答,我希望有一天我自己的推论也能通过长期的观察被添加到这些严格的定律中,我的推论就是:“没有东西能够象在测试环境那样在生产环境中运转”。
Oracle DBA面临一个严峻的挑战:如何准确预报下一组对数据库或应用程序,甚至是硬件配置的改动对整个数据库环境产生的负面影响。这里所说的整个环境字面上的意思是:任何应用程序运行时执行的每一条SQL语句,不管它仅仅是一个简单的查询语句还是包括大量DML语句的批处理作业,都必须捕获。这个挑战目前变得更加尖锐,因为当前的应用程序负载大都是跨多个技术产生的:N层应用程序服务器、web farms、甚至传统的客户端/服务器模式应用程序。况且,当某个应用程序执行速度慢下来时,要跟踪追捕检查性能下降的根本原因几乎不可能的。它可能是因不正确的网络配置、不正确的应用程序服务器配置、甚至可能是因为应用程序客户端环境变量设置不正确引起的。
目前实现这个艰巨的目标唯一的选择是“捕获/重放”应用程序负载产品套件,这类应用程序是专门设计用于捕获当前生产环境数据库已经执行过的完整负载(p+0),然后重放该负载(p+1)。然而,以我多年的经验看来,这意味着公司要尽早购买第三方较昂贵的解决方案(如HP的LoadRunner工具)。软件的许可成本和服务器的配置成本需要集中精力考虑,特别是人力资源配置的考虑,可能在捕获/重放负载开始之前很容易就会达到六位数美金的投入了。这就是为什么许多IT机构放弃了这个想法,因为测试应用程序性能倒退的成本因素使其变得不太可能。
- ››oracle 恢复误删除的表和误更新的表
- ››Oracle分页查询排序数据重复问题
- ››Oracle创建dblink报错:ORA-01017、ORA-02063解决
- ››Oracle 提高SQL执行效率的方法
- ››Oracle 动态查询,EXECUTE IMMEDIATE select into...
- ››Oracle 11g必须开启的服务及服务详细介绍
- ››oracle性能34条优化技巧
- ››oracle数据库生成随机数的函数
- ››Oracle 数据库表空间容量调整脚本
- ››oracle单库彻底删除干净的方法
- ››Oracle创建表空间、创建用户以及授权、查看权限
- ››oracle 中 UPDATE nowait 的使用方法