将 Oracle 数据库从 9.2.0.7 升级到 9.2.0.8
Posted
技术标签:
【中文标题】将 Oracle 数据库从 9.2.0.7 升级到 9.2.0.8【英文标题】:Upgrade Oracle database from 9.2.0.7 to 9.2.0.8 【发布时间】:2010-06-17 00:57:07 【问题描述】:我们计划从 Oracle 9.2.0.7 升级到 9.2.0.8。建议升级的主要原因是解决与异常“终止并出现错误:ORA-00904:“T2”。“SYS_DS_ALIAS_4”:无效标识符”有关的问题,当我们尝试执行 DBMS_STATS.GATHER_SCHEMA_STATS 时。
我们担心建议的升级可能会对我们的 Java 应用程序产生负面影响,或者在最坏的情况下,我们的 Java 应用程序甚至可能不支持。
我们可以采取哪些可能的方法或策略来确保从 Oracle 9.2.0.7 升级到 9.2.0.8 不会对我们的 Java 应用程序产生不利影响或不会导致我们的 Java 应用程序无法正常运行。本质上,我们只是想确认我们的应用程序仍将支持 Oracle 9.2.0.8。
谢谢。
【问题讨论】:
【参考方案1】:您的第一步应该是确保使用您的准确生产布局和当前软件 (9.2.0.7) 设置测试系统。
运行一段时间以确保一切正常,然后在您的测试系统上执行升级并运行一段时间以确保它没有损坏任何东西。我不是在谈论牛仔开发者“如果它运行五分钟,那没关系”类型的测试。如果可能,应该对所有功能和性能进行彻底的测试。
一旦您对测试水平感到满意,您就可以计划在生产中做同样的事情。
这不是火箭科学,您应该始终拥有一个生产镜像,您可以在该镜像上测试您自己和第三方的软件升级。并且您应该制定退出策略,以防尽管您进行了测试,但生产升级仍然失败。
我们非常偏执,所以我们实际上提前设置了一台全新的机器,尽可能多地做。然后,在切换时,我们禁用当前生产,执行新机器仍需要的任何传输,然后启动并测试它。如果在测试过程中的任何时候无法在升级窗口中修复某些问题,旧机器会重新上线,我们稍后再试一次,并在后端对那些对失败负责的人进行适当的踢:-)
【讨论】:
【参考方案2】:我赞成 Paxdiablo 的回答 - 在您的生产系统的全尺寸副本上尽可能多地覆盖应用程序进行测试几乎没有捷径。
我认为您通常希望通过升级来回答两个问题:
在 Oracle 使用的功能 申请? 已更改优化器中的更改 执行计划(更糟!) 有任何应用查询?我相信早在 9.2 版本的优化器就会在确定执行计划时包含系统统计信息,因此如果您的测试系统硬件与生产。
如果您升级到 Oracle 11g 并拥有 $$$$,则可以许可和配置 Real Application Testing。这将让您基本上记录和回放测试实例中的数据库活动来回答这两个问题。
【讨论】:
【参考方案3】:除了 dpbradley 和 paxdiablo 的出色回答之外,在修补数据库之前,值得在 Oracle 支持站点 support.oracle.com 上查看此补丁可能引入的已知问题,这些问题可能会让您失去更多比你得到!
您需要一个有效的支持许可证才能登录 Oracle 支持站点,但有一个针对 9.2.0.8 的注释归档在:
9.2.0.8 补丁集 - 可用性和已知问题 [ID 388281.1]
【讨论】:
以上是关于将 Oracle 数据库从 9.2.0.7 升级到 9.2.0.8的主要内容,如果未能解决你的问题,请参考以下文章
应用程序升级到oracle 11g后,无法通过SOAP API Web服务检索数据
oracle10g升级到11g之后跨平台ADG遇到ORA-10561错误问题