upgrade oracle 32bit database to 64bit & dataguard

2195阅读 0评论2010-07-10 blue_stone
分类:Oracle

昨天被问到一个问题, 如何升级一个32bit的数据库到64bit的数据库.

如果使用DBUA, 运行完成后, 转换就完成了.

如果手工来做, 就需要把文件复制到相应的位置, 将数据库启动到upgrade状态, 运行utlirp.sql, 然后将数据库启动到open状态, 运行utlrp.sql. 可参考Metalink Note 62290.1.

除此之外, OLAP Option也需要特别处理. 在Metalink Note 352306.1中有说明. 如果嫌麻烦,可以干脆卸载OLAP, 然后重装.

除了在相同平台上在32bit和64bit之间迁移, 也可以在相同endian平台之间使用rman convert命令迁移.

如果没有足够的停机时间, 而机器又比较充裕, 可以考虑跨平台的dataguard, 搭建一个datagaurd环境, 可在不破坏原有环境的情况下进行测试新的数据库. 关于跨平台Dataguard支持的平台, 可参考Metalink Note 413484.1, 一些有意思的配置, 总结如下:

10g后, HP-UX(PA-RISC)(PLATFORM_ID 3) 和HP-UX(Itanium)(Platform_ID 4)之间可以做dataguard.

10g后, MS Windows(x86)(PLATFORM_ID 7), MS Windows(IA64)(PLATFORM_ID 8), MS Windows(x64)(PLATFORM_ID 12) 之间可以做dataguard.

10g后, Linux(x86)(PLATFORM_ID 10), Linux(IA64)(PLATFORM_ID 11), Linux(x86_64)(PLATFORM_ID 13) 之间可以相互做Dataguard

11g后, Linux和Windows之间可以做Dataguard, 但是32bit Linux不能和64bit Windows做

10g后, Solaris(x86)(PLATFORM_ID 17)可以和Solaris(x86-64)(PLATFORM_ID 20)做Dataguard

11g后, Solaris(x86-64)可以和Linux(x86-64)做Dataguard.

64bit z/Linux(PLATFORM_ID 9)和Linux on POwer(PLATFORM_ID 18)之间可以做Dataguard.

还没有做过复杂的跨平台Dataguard, 将来有机会, 一定要试下.


上一篇:systemtap可以在debian上使用了.
下一篇:PowerHA/HACMP中的磁盘心跳