将现有 Oracle 数据库(非二进制可执行程序文件/)从一个操作系统平台移植到另一个操作系统平台(例如从 Windows 到
Solaris)
这种需求会发生在 Oracle 版本升级过程中(Oracle 8i 一直到 Oracle 11G),或者在同一 Oracle
版本内(Oracle 10.2 到 Oracle 10.2)。
平台迁移中不考虑操作系统内部的更改(例如将 Linux、Windows 或 Solaris 从 32 位到 64
位),这些更改会被当做正常升级/ wordsize 转换来处理。
有关详细信息,请参考相应的迁移手册或
Note: 62290.1- Changing between
32-bit and 64-bit Word Sizes
Fix
我们没有迁移实用程序(脚本或 DBUA)来执行 Oracle Database 的跨平台迁移。
更改平台需要使用下列方法之一重新构建数据库和(或)移动数据:
执行“export/import”操作,包括Datapump。所有版本都支持“export/import”操纵,但是对于Datapump,则需要
10.1.0.2 或更高版本。
10G 或更高版本可使用 Transportable
Tablespaces。
10G 或更高版本可使用 RMAN Convert Database
功能。
Streams 流复制。
Create Table As Select (CTAS)
Dataguard 基于异构平台的物理主备库。
Oracle Golden Gate(要获得关于Oracle Golden Gate
的帮助,请开SR到Golden Gate Team)
每个可用选项都会有其优势和局限,包括数据类型、所需时间和潜在成本。
可用选项的优劣将取决于源和目标操作系统及 Oracle 版本。
例如:
使用 Dataguard 基于异构平台的物理主备库时将存在平台局限
有关详细信息,请参考 Note:
413484.1Data Guard Support
for Heterogeneous Primary and Physical Standbys in Same Data Guard
Configuration
仅当源和目标都属于相同 ENDIAN 格式时,RMAN Convert Database 才工作。
针对 Transportable Tablespaces 的 RMAN's convert 功能将从一种 ENDIAN
格式转换为另一种格式。
这两个命令是不相同的。请参考本文档结尾列出的文章,以获得所需的正确解释。
PLATFORM_NAME
ENDIAN_FORMAT
Oracle Solaris on SPARC (32-bit & 64-bit)
Big
AIX-Based Systems (64-bit)
Big
HP-UX (64-bit)
Big
HP-UX IA (64-bit)
Big
IBM zSeries Based Linux
Big
Apple Mac OS
Big
IBM Power Based Linux
Big
HP Tru64 UNIX
Little
Linux IA (32-bit & 64-bit)
Little
HP Open VMS
Little
Microsoft Windows IA (32-bit & 64-bit)
Little
Oracle Solaris on x86 & x86-64
Little
Linux 64-bit for AMD
Little
Microsoft Windows 64-bit for AMD
Little
下面是使用Transportable Tablespaces基本步骤:
在新环境中创建一个“空”数据库
将所有数据表空间从源数据库插入目标数据库
SYSTEM+SYSAUX 表空间无法传输
移动视图、同义词等所需的其他步骤
可能升级很快
复杂性可能成为约束
自 Oracle Database 10g 开始支持跨平台和跨 Endian 工作
下面是在升级中使用 Oracle Streams 的基本信息:
构建数据库的副本并升级该数据库
将其与源数据库同步
最小停机时间:仅重新连接客户端
跨平台工作
自 Oracle 9iR2 开始支持跨版本
对其进行设置所需的一些工作
自源数据库未被操作以来可能的回退
可能的问题包括:
数据类型限制
性能
下面是一系列文章,可帮助用户确定最适合他们的步骤。
文章:
Note.553337.1Export/Import
DataPump Parameter VERSION - Compatibility of Data Pump Between
Different Oracle Versions
Note.556636.1Oracle Server -
Export Data Pump and Import DataPump FAQ
Note.351598.1Export/Import
DataPump The Minimum Requirements to Use Export DataPump and Import
DataPump (System Privileges)
Note.243304.110g :
Transportable Tablespaces Across Different Platforms
Note:371556.1 How move tablespaces across
platforms using Transportable Tablespaces with RMAN
Note: 413484.1Data Guard Support
for Heterogeneous Primary and Physical Standbys in Same Data Guard
Configuration
Oracle Streams Concepts and Administration: Appendix D
http://download.oracle.com/docs/cd/E11882_01/server.112/e17069/ap_strmnt.htm#CIHJBIAA
References
NOTE:556636.1-
Oracle Server - Export Data Pump and Import DataPump
FAQ
NOTE:1401921.1-
Cross-Platform Database Migration (across same endian) using RMAN
Transportable Database
NOTE:1389592.1-
Reduce Transportable Tablespace Downtime using Cross Platform
Incremental Backups
NOTE:243304.1-
10g+: Transportable Tablespaces Across Different
Platforms
NOTE:351598.1-
Export/Import DataPump: The Minimum Requirements to Use Export
DataPump and Import DataPump (System Privileges)
NOTE:371556.1-
How to Migrate to different Endian Platform Using Transportable
Tablespaces With RMAN
NOTE:553337.1-
Export/Import DataPump Parameter VERSION - Compatibility of Data
Pump Between Different Oracle Versions [Video]
NOTE:413484.1-
Data Guard Support for Heterogeneous Primary and Physical Standbys
in Same Data Guard Configuration
NOTE:62290.1-
Changing between 32-bit and 64-bit Word Sizes