您的位置:首页 > 其它

关于在不同版本和平台之间进行还原或复制的常见问题

2013-05-30 21:07 567 查看
关于在不同版本和平台之间进行还原或复制的常见问题 [ID 1526162.1]

修改时间:2013-2-20类型:FAQ状态:PUBLISHED优先级:3

注释 (0)

In this Document

Purpose

Questions and Answers

1) 我能用更高版本的 Oracle 还原或复制旧版本的数据库吗?

2) 我能在两个不同的补丁程序集之间进行还原或复制吗?

3) 我能在同一操作系统的不同版本之间进行还原或复制吗?

4) Oracle 的位(bit)级别(32 位或 64 位)不匹配时,可以进行还原或复制吗?

5) 可以将更高版本的备份还原到较早版本的 Oracle 吗?

6) 我能在两个不同的平台之间还原或复制我的 RMAN 备份吗,例如 Solaris 到 Linux?

References

Applies to:

Oracle Database - Enterprise Edition - Version 9.0.1.0 and later

Information in this document applies to any platform.

Purpose

本文档回答了有关如何使用 RMAN 从旧版本以及具有不同字长的系统中还原备份的常见问题。下面列出了一些常与 Oracle 软件升级相关的情形。

如果您需要有关当前主题的更多信息,请通过以下链接直接访问“备份和恢复社区”与Oracle 客户和专家进行讨论:

https://communities.oracle.com/portal/server.pt/community/database_backup_and_recovery/243

Questions and Answers

注意:以下部分中的还原是指用户管理的(非 RMAN)还原或 RMAN 还原。复制(Duplicate)是只有 RMAN 才具有的一种功能,但在提到复制时,它也适用于用户管理的数据库克隆。

1) 我能用更高版本的 Oracle 还原或复制旧版本的数据库吗?

RMAN 可将在较旧的数据库版本上进行的备份还原到较新的版本中。旧的备份必须是在 9.2 或更高版本的数据库中进行的。

此方法可用作异地(out-of-place) 数据库升级的一部分,其中,旧的备份被还原到新版本数据库中,然后升级脚本照常运行。由于旧的数据库在升级过程中可以保持连线状态,因此这种方法相对于就地(in-place) 升级更为可取,在就地升级中数据库必须保持离线状态。

例如,我希望使用在 10.2 数据库上进行的备份将数据库升级到 11.2。11.2 数据库将驻留在新的主机上。

步骤如下:

1. 在新主机上安装 11.2 数据库软件和最新的补丁程序集,并按照本 文档 中的说明准备 11.2 Oracle 主目录。

2. 允许从新主机访问磁盘和/或磁带备份

3. 将备份还原到 11.2 数据库,并按照本 文档 中的说明将数据库恢复到一致的时间点。 此时不要打开数据库。

4. 按照本文档 中的说明,紧接着,从安装完 11.2 软件后的时间点开始,将 10.2 数据库手动升级至 11.2。

请确保您完成了相关升级文档(如下所列)中列出的各种数据库组件的升级前/升级后过程:

Note 837570.1 Complete Checklist for Manual Upgrades to 11gR2

注意:上面的过程适用于还原从未升级至 11.2 的 10.2 数据库。如果数据库已经升级,而您需要通过升级之前的备份(版本10.2)还原数据库,则您只需要进行还原和恢复,介质回复将重现由升级完成的一切内容。

不支持 RMAN“复制”,因为该功能会在恢复之后尝试自动打开数据库时失败(第 3 步)。

2) 我能在两个不同的补丁程序集之间进行还原或复制吗?

正如您可以在不同的 Oracle 版本之间进行还原一样,您也可以在两个不同的补丁程序集之间执行这一操作。有关详细信息,请参阅问题 1。

请注意,您必须按照相应 Readme 文件中的说明进行操作。如果需要重置日志(resetlogs),请在执行升级或降级至某个补丁程序集所需的脚本之前,根据需要执行以下命令:

SQL> alter database open resetlogs upgrade;



SQL> alter database open resetlogs downgrade;

由于 RMAN“复制”会尝试自动打开数据库,因此,在这种情况下您就不应使用 RMAN 复制,而只使用 RMAN 还原。

3) 我能在同一操作系统的不同版本之间进行还原或复制吗?

例如,我能将在运行 Solaris 9 的主机上进行的 9.2.0.1.0 RMAN 备份还原到已安装 9.2.0.1.0 但其主机却运行 Solaris 10 的其他机器吗?

如果可以使用相同的 Oracle Server 安装 CD(介质包)在 Solaris 9 和 Solaris 10 上安装 9.2.0.1.0,则将支持这类还原。

4) Oracle 的位(bit)级别(32 位或 64 位)不匹配时,可以进行还原或复制吗?

例如,可以将我的 9.2 版64 位数据库还原或复制到 9.2.32 位安装吗?

执行还原/恢复时,最好保持相同的位版本。但是,除使用复制命令外,使用相同的操作系统平台应该允许在 Oracle 位级别(32 位或 64 位)之间进行还原/恢复。请注意,这可能只适用于特定的操作系统,若有与此相关的任何问题,应向 Oracle Support 报告。

如果您要使用 32 位软件运行 64 位数据库(或反之),则在恢复结束之后必须要使用 utlirp.sql 转换数据库位版本。

有关在位之间进行切换的详细信息,请参阅以下文档:

Note 62290.1 Changing between 32-bit and 64-bit Word Sizes

如果不运行 utlirp.sql,将会出现以下错误(不限于):

ORA-06553: PLS-801: INTERNAL ERROR [56319]

5) 可以将更高版本的备份还原到较早版本的 Oracle 吗?

例如,您准备从 10.2 升级至 11.2。在成功升级并在 11.2 上运行几天之后,您对 11.2 数据库进行了新的备份。您想知道,如果 11.2 中出现问题,是否能够将 11.2 备份还原到其他主机上,该主机安装了 10.2 数据库软件,(或在同一主机上重新安装 10.2,然后还原 11.2 备份)。

如果在升级后从未增加 COMPATIBLE 参数,则可以进行此类还原。在本示例中,如果 11.2 数据库始终是在 COMPATIBLE 为 10.2 的情况下运行,则可以将 11.2 数据库的备份还原到 10.2 实例中,然后执行降级过程。

如果数据库已经在 COMPATIBLE 为 11.2 的情况下打开,则不能进行此类还原。另一种维护 HA 和旧版本数据库(如果需要回滚)的好方法是,使用 Data Guard 滚动(rolling)升级法,该方法涉及临时逻辑备用数据库(只是在升级期间临时把主数据库变成逻辑备用数据库)。将备用数据库升级至新版本后(主数据库仍然在旧版本上运行),您可以进行切换并验证升级后的数据库是否运作正常。如果运作不正常,您可以切换回到旧的版本。

6) 我能在两个不同的平台之间还原或复制我的 RMAN 备份吗,例如 Solaris 到 Linux?

通常,您不能在两个不同的平台之间进行还原或复制。

注意:请参阅 Note 1079563.1 ,其中列出了 Oracle 支持的跨平台复制/还原/恢复的平台和 Oracle 版本。

在 10g 之前的版本中,从一个平台迁移至另一个平台的唯一方法是使用导出/导入。在 10g 中,通过 RMAN 转换(convert)命令,您可以使用 10g 跨平台可传输表空间(Cross-Platform Transportable Tablespaces)选项跨越各个平台。有关更多详细信息,请参阅以下文档:

Note 243304.1 Transportable Tablespaces Across Different Platforms

以及:

http://www.oracle.com/technetwork/database/features/availability/thehartfordprofile-xtts-133180.pdf

在 10.2 及更高版本中,如果源 OS 和目标 OS 具有相同的字节序(endian),您可以发出“CONVERT DATABASE”命令,以便转换数据文件并使其准备好传输到目标机器。有关“CONVERT DATABASE”的更多详细信息,请参阅:

Oracle Database Backup and Recovery Advanced User's Guide

10g Release 2 (10.2)

Chapter 15, RMAN Cross-Platform Transportable Databases and Tablespaces

注意:请参阅 Note 732053.1 ,了解在版本10.2 和 11.1 中,如何在可传输数据库(transportable database)期间跳过不包含UNDO信息的数据文件。该过程可大大减少总体完成时间。此外,请注意,为了实现这一目的,11.2 还针对 CONVERT DATABASE 提供了 SKIP UNNECESSARY DATAFILES 选项。

如果是从 32 位到 64 位,还必须按照 Note 62290.1 中的说明改变字长。

此外,在平台之间进行迁移时,可使用第三方应用程序,例如 VERITAS Storage Foundation 便捷式数据容器:

http://eval.veritas.com/mktginfo/products/White_Papers/Storage_Server_Management/Portable_Data_Containers_for_Oracle.pdf

(有关 VERITAS Storage Foundation 便捷式数据容器的信息,请联系 Veritas)

References

NOTE:1079563.1 - RMAN DUPLICATE/RESTORE/RECOVER Mixed Platform Support

NOTE:73431.1 - RMAN Compatibility Matrix

NOTE:62290.1 - Changing between 32-bit and 64-bit Word Sizes

NOTE:732053.1 - Avoid Datafile Conversion during Transportable Database

NOTE:560417.1 - Recovery Through Upgrade returns ORA-1092 on Open

NOTE:558408.1 - Restoring a database to a higher patchset
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐