本说明针对重做应用和 Oracle Data Guard 12 发行版 1 进行了更新。它适用于 Oracle Database 10g 和 Oracle Database 12c 的所有版本。 您是否希望与其他 Oracle 客户、Oracle 员工和业内专家进一步探讨此主题?您可以直接在本说明底部关于本文的讨论帖子中讨论本说明,介绍您的经验,也可以直接提出相关问题。如果您希望就其他文章和话题进行讨论,或者展开新的讨论,您可以访问中文数据库社区。 有关使用逻辑备用数据库(SQL Apply)的支持配置信息,请参阅技术支持Note 1085687.1范围和适用性: 部署 Data Guard 时最简单的途径是配置同构的对称主/备用配置。但是,为了利用运行不同操作系统的现有服务器,或者为了在尽可能减少停机时间或风险的情况下帮助从一个平台向另一个平台移植时,通常部署异构配置会非常有用。对于希望使用低于生产环境的处理能力的配置或者使用成本低于其主系统的组件来配置备用系统,从而减少其灾难恢复投资的用户而言,这是相当合理的选择。使用本技术支持文档中提供的指示和信息来确定单个 Data Guard 配置中支持哪些平台组合以及可能存在的任何其他要求或限制。
如果考虑使用异构主/备配置,则 Oracle 建议用户进行足够的测试以确保在 switchover(切换)或 failover(故障转移)到备用系统之后,能够继续达到所需的服务水平。
1. 确定主数据库和备用数据库的平台 ID。
使用以下查询可在 V$DATABASE 视图中找到数据库的PLATFORM_ID:
SQL> select platform_id, platform_name from v$database;
PLATFORM_ID PLATFORM_NAME
----------- -----------------------------------
10 Linux IA (32-bit)
只要满足以下条件,则始终支持主服务器与备用服务器之间的差别:在所有服务器上安装的 Oracle 软件是相同Oracle平台(如上定义);经过认证可在各服务器上运行;具有相同的 Oracle 数据库发行版和 Patch Set(补丁程序集)。支持的这种差别的示例包括:
- 硬件生产商(例如 Dell 和 Sun 或 Hitachi 和 EMC)
- 硬件配置(例如,CPU 数、RAM 大小、存储配置等)
- 处理器(例如 x86-64 AMD64 和 x86-64 Intel 64;POWER4 和 POWER5)
- 操作系统发行版(例如 Red Hat Linux、SUSE Linux 或 Oracle Enterprise Linux)
- O操作系统版本(例如 Windows 2000 和 Windows XP)
2. 如果您的主平台与备用平台的平台 ID 不同,请检查下表以查看 Data Guard 重做日志应用(物理备用)是否支持您的配置。
除了在使用相同 Oracle 平台时的一般支持之外,Data Guard 重做日志应用(物理备用)可以支持特定的混合 Oracle 平台组合。下表中列出了 Oracle 平台 ID、平台名称以及哪些平台 ID 可以组合以构成支持的 Data Guard 配置来使用重做日志应用。下表中未列出的平台组合不支持使用 Data Guard 重做日志应用。
表注释
- 在 Data Guard 11g 之前,Data Guard Broker在相同 Data Guard 配置中不支持不同的字长,因而需要从 SQL*Plus 命令行管理混合字长的 Data Guard 配置。从 Data Guard 11g 开始消除了此限制。
- 主数据库和备用数据库必须设置为与下表中最低发行版(如果指定)相同的兼容性模式。
- 在任何环境中,如果主数据库和备用数据库之间存在与二进制级别相关的 PL/SQL 不兼容,则备用数据库无法以只读模式打开。下表中引用了文档 Note:414043.1,介绍这种情况的任意平台组合(该说明提供有关在角色转换后消除不兼容性的指导)。 在 Oracle Database 11g 的这种环境中,可以通过将其临时转换为 Snapshot(快照)备用备用数据库来的方式来访问备用数据库,而在 Oracle Database 10g 中,则按照《Data Guard 10g Concepts and Administration guide》中的以下章节所述来以读/写方式打开备用数据库:Using a Physical Standby Database for Read/Write Testing and Reporting。 这两种方法需要遵守 Note:414043.1 中的步骤操作才能使数据库对用户可用。
- 请确保阅读了下表中引用的技术支持文档。.
- 对于所支持平台组合,RMAN 通常支持物理备用数据库的实例化。有关详细信息,请参阅技术支持 Note 1079563.1。
- 支持组合中的平台能够以主或备用的角色运行。
- 在具有不同 PLATFORM_ID 的任意配置中,Enterprise Manager 不能用于备用数据库创建或其他管理功能。Oracle 建议使用 Data Guard Broker命令行界面 (DGMGRL) 来管理 Oracle Database 11g 及更高版本的混合平台组合,Oracle Database 11g 之前的配置则使用 SQL*Plus 命令行界面。
PLATFORM_ID | PLATFORM_NAME 发行版名称 |
使用 Data Guard 重做日志应用(物理备用)时,相同 Data Guard 配置中支持的 PLATFORM_ID |
2 | Solaris[tm] OE (64-bit) Solaris Operating System (SPARC) (64-bit) |
2 6 - 请参考文档 Note: 1982638.1 和 Note: 414043.1 |
3 | HP-UX (64-bit) HP-UX PA-RISC |
3 4 - Oracle 10g 及更高版本,请参阅技术支持文档 Note: 395982.1 和 Note:414043.1 |
4 | HP-UX IA (64-bit) HP-UX Itanium |
4 3 - Oracle 10g 及更高版本,请参阅技术支持文档 Note: 395982.1 和 Note:414043.1 |
5 | HP Tru64 UNIX HP Tru64 UNIX |
5 |
6 | IBM AIX on POWER Systems (64-bit) | 2 - 请参考文档 Note: 1982638.1 和 Note: 414043.1 6 |
7 | Microsoft Windows (32-bit) Microsoft Windows (x86) |
7 8, 12 - Oracle 10g 及更高版本,请参阅 技术支持文档 Note: 414043.1 10 - Oracle 11g 及更高版本,需要 Patch 13104881 11, 13 - Oracle 11g 及更高版本,请参阅 技术支持文档 Note: 414043.1,还需要 Patch 13104881 |
8 | Microsoft Windows IA (64-bit) Microsoft Windows (64-bit Itanium) |
7 - Oracle 10g 及更高版本,请参阅 技术支持文档 Note: 414043.1 8 12 - Oracle 10g 及更高版本 11, 13 - Oracle 11g 及更高版本,需要 Patch 13104881 |
9 | IBM zSeries Based Linux z/Linux |
9 18 (仅 64 位 zSeries) |
10 | Linux (32-bit) Linux x86 |
7 - Oracle 11g 及更高版本,需要 Patch 13104881 10 11, 13 - Oracle 10g 及更高版本,请参阅 技术支持文档 Note: 414043.1 |
11 | Linux IA (64-bit) Linux Itanium |
10 - Oracle 10g 及更高版本,请参阅 技术支持文档 Note: 414043.1 11 13 - Oracle 10g 及更高版本 7 - Oracle 11g 及更高版本,请参阅 技术支持文档 Note: 414043.1,还需要 Patch 13104881 8, 12 - Oracle 11g 及更高版本,需要 Patch 13104881 |
12 | Microsoft Windows 64-bit for AMD Microsoft Windows (x86-64) |
7 - Oracle 10g 及更高版本,请参阅技术支持说明 Note: 414043.1 8 - Oracle 10g 及更高版本 12 11, 13 - Oracle 11g 及更高版本,需要 Patch 13104881 |
13 | Linux 64-bit for AMD Linux x86-64 |
7 - Oracle 11g 及更高版本,请参阅 技术支持文档 Note: 414043.1,还需要 Patch 13104881 10 - Oracle 10g 及更高版本,请参阅技术支持文档 Note: 414043.1 11 - Oracle 10g 及更高版本 8, 12 - Oracle 11g 及更高版本,需要 Patch 13104881 13 20 - Oracle 11g 及更高版本 |
15 | HP Open VMS HP OpenVMS Alpha HP IA OpenVMS OpenVMS Itanium |
15 |
16 | Apple Mac OS Mac OS X Server |
16 |
17 | Solaris Operating System (x86) Solaris Operating System (x86) |
17 20 - Oracle 10g 及更高版本,请参阅 技术支持文档 Note: 414043.1 |
18 | IBM Power Based Linux Linux on Power |
9(仅 64 位 zSeries) 18 |
20 | Solaris Operating System (AMD64) Solaris Operating System (x86-64) |
13 - Oracle 11g 及更高版本 17 - Oracle 10g 及更高版本,请参阅 技术支持文档 Note: 414043.1 20 |
3. 其他信息:
临时逻辑数据库滚动升级: 从 Oracle Database 11.1.0.7 开始,可以利用物理备用数据库,进行临时逻辑备库滚动数据库升级过程,将数据库滚动升级到新的 Oracle Patch Set(补丁程序集)和 数据库发行版。请参阅“Maximum Availability Architecture Best Practice”一文中的 " Rolling Database Upgrades for Physical Standby Databases using Transient Logical Standby 11g"。 使用数据库滚动升级过程使得备用数据库可以应用主数据库发送的重做,虽然主数据库仍然在旧的 Oracle 发行版或 patchset(补丁程序集)上运行。临时逻辑备库滚动升级过程要求,在升级前 Oracle 发行版部署到 Data Guard 配置中时,主平台和备用平台组合是重做日志应用(参见上表)和 SQL 应用(参阅 技术支持文档 1085687.1)支持的配置。
包括物理和逻辑备用 数据库组合的 Data Guard 配置: Data Guard 配置 包括一个主数据库和最多30个备用数据库。这些备用数据库可以是物理备用数据库和逻辑备用数据库的混合。单个Data Guard 配置中的所有物理备用数据库必须符合本说明中的要求。与此类似,如果配置包括逻辑备用数据库,则必须符合技术支持文档1085687.1 的要求。
Real Application Cluster 和 Automatic Storage Management: 主数据库和备用数据库不必都是 Oracle RAC 数据库,也不必均使用 ASM。例如,主数据库可以运行 Oracle RAC,使用或不使用 ASM,而备用数据库则可以是单实例,使用或不使用ASM。 此外,在主数据库和备用数据库均为 Oracle RAC 数据库时,主数据库和备用数据库之间的 Oracle RAC节点数可以不同。此外,主系统与备用系统之间的 ASM 和 CRS 的版本不必相同。
Exadata Database Machine: 只要相同 Data Guard 配置中的主系统和备用系统的平台 ID 遵守上表中定义的支持要求,则主和/或备用数据库是驻留在 Exadata Database Machine 上还是其他硬件上对于 Data Guard 来说是透明的。如果使用了 Exadata Hybrid Columnar Compression (EHCC),则强烈建议主系统和备用系统驻留在 Exadata 上。请参阅“Maximum Availability Architecture Best Practice”一文中的 "Disaster Recovery for Exadata Database Machine"。
参考
BUG:13104881 - ORA-600 [6101] DATA CORRUPTION IN 11.2.0.2 WINDOWS TO LINUX STANDBY DUPLICATION
NOTE:1079563.1 - RMAN DUPLICATE/RESTORE/RECOVER Mixed Platform Support
NOTE:414043.1 - Role Transitions for Data Guard Configurations Using Mixed Oracle Binaries
BUG:12702521 - CANNOT SUPPORT SPARC<->AIX MIXED DATA GUARD DUE TO CONTROLFILE INCOMPATIBILITY
BUG:13104881 - ORA-600 [6101] DATA CORRUPTION IN 11.2.0.2 WINDOWS TO LINUX STANDBY DUPLICATION