升级前环境描述: 
两台机器做物理standby,OS和DB配置基本相同
OS:Red Hat Enterprise Linux AS release 4 32位的
DB:Oracle 9.2.0.8 32位的新购买机器,升级后环境描述:
两台新机器仍然做物理standby,
OS:Red Hat Enterprise Linux AS release 4 64位的
DB:Oracle 11.1.0.7 64位的已经验证,单机环境下,可以不归档方式从Oracle 9208升级到11.1.0.7成功,使用数据库软件所带范例数据库升级,大约花费一个小时。实际环境下尽可能希望能够不停机。(真实数据文件不到30G)由于从9i到11g版本跨度较大,当时设想的解决方案可能存在问题:
1. 给两台新机器安装9208和11.1.0.7的软件,不安装数据库
2. 配置这两台新机器为原环境的standby
3. 升级这两台新机器到11g
4. 切换新机器为主库,停止原两台机器
问题在于,9i上生成的归档文件能在11g上使用么,能正常应用归档么?感觉上非常可能是要失败的(log_archive_format),这个方案正在搭建测试中。欢迎大家拍砖和提供可测试的方案,鞠躬,严重感谢

解决方案 »

  1.   


    standby要求是需要主和辅机都是同一个版本,所以你用11g做9i的standby这个方案是有问题的。30G的物理空间,如果安排和规划的好的话,使用Exp和Imp的方式,时间不会超过1个小时,而且个人觉得Exp/Imp的方案应该更可靠一些,至少我做过的类似的迁移在数据库这块还没有什么问题,倒是迁移以后系统的测试的时间,远远超过这个迁移的时间。
      

  2.   

    30的数据量不大
    exp DIRECT ,如果不出现异常,20分钟内完成。
      

  3.   

    什么样子的方案才算得当呢,liuyi8903大大能说说么?
      

  4.   

    其实楼上也已经有人说过了,TTS配合存储级别的镜像.
      

  5.   

    所以重要在于tts前的工作准备好.镜像,以及一些对象在新库上的创建.以及system上的对象移动至用户表空间中这些都要准备好.
      

  6.   

    顶上来
    ==================================================================
    Inthirties关注Oracle数据库 维护 优化,安全,备份,恢复,迁移,故障处理如果你需要帮助或想和我一起学习的请联系
    联系方式QQ:370140387
    电子邮件:[email protected]
    网站: http://www.inthirties.com
      

  7.   

    这个方式没有任何问题,有一个非常核心的系统迁移加升级,我也是使用这个方法啊.当然,你用stream也不错.
      

  8.   

    谢谢各位老大有空做个实验确认一下,从9i是不是能直接通过传输表空间到11g。之前似乎看过文档从10g开始才支持从低版本到高版本的传输表空间,可以确认一下当前提出第二个笨一点的办法作为备选方案,毕竟数据量不大:
    1. exp inctype=complete 导出全库
    2. imp 导入11g
    3. 重启原9i数据库到strict模式,exp inctype=incremental 增量把步骤1,2这段时间内的数据变更增量导出并导入11g
    4. 切换服务如果在实际测试中步骤1,2所花的时间过长,那么就多做一次增量导出导入再切换服务
      

  9.   

    hoho,尝试了一把,发现inctype这个参数在9i废弃了,用system用户也不行
    还是RMAN备份恢复吧修改之前的备选方案,把用exp/imp的地方用rman替代了吧
    1. rman 备份全库 
    2. recover databae
    3. 重启原9i数据库到strict模式,rman做增量备份恢复
    4. 切换服务 希望传输表空间的方案能跨大版本
      

  10.   


    exp/imp的增量实在是没有太大意义,已经拿走了。