以最短的宕机时间升级到Oracle 10g
数据库升级是一种挑战的工作,Oracle DBA关注的是升级是否能够完成,以及可能导致的宕机时间,结合Quest Software的产品方案,我们建议用户通过下列步骤,将升级过程中的宕机时间和失败风险降到最低:
创建测试实例:通过数据复制等手段,建立生产数据库的副本,以练习和测试升级。最简单的方法是使用磁盘镜像来创建该副本。
复制生产数据:在生产数据库和测试副本之间建立数据复制进程。要确保您在测试过程中复制了所有的生产表和序列,这样您的测试将是完整的。可以使用Quest Software 的SharePlex for Oracle 来实现数据复制。要确保在测试实例中禁用触发器。触发器不应该修改目标数据,因为触发器在生产系统中产生的数据变化,会同样被Shareplex 复制到测试数据库。
测试数据库升级:在启动复制进程后,即可在测试实例中进行尝试性的数据库升级。为此,需要先停止测试实例的数据更新,并允许Shareplex将捕获到的生产系统更新暂存到队列中,按照Oracle的说明进行升级,完成后恢复复制进程,将队列里的事务复制到新的Oracle 10g实例中。
检查升级后的测试实例:数据复制是测试升级后的Oracle新实例的重要开端,生产数据库及其数据变化中包含了大量的数据和多种事务类型,如果不借助SharePlex,就可能需要大量的时间才能完成。复制过程需要持续至少两天。接下来,就可以在升级后的测试数据库上,以只读方式运行您的报表和查询,检验其与Oracle 10g的兼容性,了解是否所有报表和查询都能在Oracle 10g上正常运行。
实施所需的Oracle 10g新特性:接下来,可以在测试实例中部署您所需要的Oracle 10g新特性,检验其是否可用。
在oracle 10g上测试更新后的应用程序:上一步完成后,你可以进一步检查所有的应用程序(套装和自开发应用)是否能与新的数据库兼容。在测试实例中运行需要更新数据的应用程序时,先应停止复制里程,打开开发诊断工具,以确定哪些表和序列受到应用程序的影响。然后,运行测试,并检查其结果。在测试实例中进行的测试,会造成生产实例和测试实例的数据不一致,因此在必要时,需要还原测试环境使得两边的数据一致。Quest Software公司的SharePlex for Oracle和Toad for Oracle产品中,都包括了相应的工具,可用于数据库的比较和同步。你也可以在测试开始前,利用Oracle 10g或其它存储软件,对数据库进行备份,在必要进通过数据恢复实现重新同步的目标。
将生产系统迁移到Oracle 10g:升级测试成功后,可以通过同样的步骤,展开实际的数据库副本升级。在数据库副本升级到Oracle 10g且与生产系统同步后,要激活一个从Oracle 10g 到Oracle 9i的反向复制链路,然后让用户在Oracle 10g系统中工作。让用户使用新版本的软件和数据库,能帮助你检查测试期间遗漏的问题。这一过程不应该有大的问题出现。即便如此,你还是应该准备一个备份计划,作为重大问题出现时的备用方案。
更新备份系统:一旦你的生产环境已经在Oracle 10g数据库和应用程序中成功运行足够长的时间,使你有了充分的信心,你会希望建立另一个10g副本,用于日常报表和查询,以优化OL TP性能和可用性。你对生产系统进行日常维护时,可以利用备份系统运行你的应用。
通过采用成熟的策略和专门的辅助工具,可以将升级需要的宕机时间降到最低。这种方法可以减少94%的宕机时间。在升级完成并进行了充分的测试后,才将用户转移过来,所有由于升级过程意外故障所引起的延误都得以消除,这主要是由于升级过程并没有直接在生产系统上进行。
免费试用版:
白皮书:
阅读(820) | 评论(0) | 转发(0) |