Oracle Data Guard |
|
“当我们建立生产系统时,我们的恢复战略是基于磁带备份的。我们还设置了 Oracle Data Guard:我原来将它看作是“可有可无”的可选附件。但在 2008 年,我们有一个 SAN 完全故障并且另一个 SAN 磁盘严重损坏,二者都间接导致电力中断。在这两种情况下,Oracle Data Guard 都使我们得以恢复而没有丢失任何数据。现在,我认识到它不是“可有可无的”,而是必需的!”— 英国牛津布鲁克斯大学数据服务经理 Rachel Slade Oracle Data Guard 是针对企业数据库的最有效和最全面的数据可用性、数据保护和灾难恢复解决方案。它提供管理、监视和自动化软件基础架构来创建和维护一个或多个同步备用数据库,从而保护数据不受故障、灾难、错误和损坏的影响。 Data Guard 备用数据库可以位于距离生产数据中心几千英里外的远程灾难恢复网站上,也可以位于同一个城市、同一个校园,甚至同一个建筑物中。如果生产数据库由于计划中或计划外中断而变得不可用,Data Guard 可以将任意备用数据库切换到生产角色,从而可使停机时间减到最少并防止数据丢失。
Data Guard 是 Oracle 真正应用集群 (RAC) 的理想补充并可与其他 Oracle 高可用性 (HA) 解决方案(如 Oracle 闪回、 Oracle Recovery Manager (RMAN))以及 Oracle 数据库 11 g 的新数据库选件(包括 Oracle Active Data Guard 和 Oracle Advanced Compression)结合使用,以提供最高级别的数据保护、数据可用性和资源利用率。 下图为 Oracle Data Guard 的概括示意图。
Data Guard 配置 一个 Data Guard 配置包括一个生产数据库(或主数据库)和最多九个备用数据库。Data Guard 配置中的数据库通过 Oracle Net 连接,地理上可能非常分散。对数据库所处位置没有限制,只要它们能互相通信就行。 Data Guard 体系结构图 重做应用和 SQL 应用 备用数据库最初是从主数据库的一个备份副本创建的。一旦创建了备用数据库,Data Guard 会自动将主数据库重做数据传输给备用系统, 然后将重做数据应用到备用数据库中,从而保持备用数据库为与主数据库同步的副本。 Data Guard 提供了两种方法将这些重做数据应用到备用数据库中,并使之与主数据库同步。这两种方法与 Data Guard 支持的两种类型的备用数据库对应。
物理备用数据库提供与主数据库在物理上完全相同的副本,磁盘上的数据库结构与主数据库在块级别上完全相同。数据库模式(包括索引)都是相同的。重做应用技术使用标准 Oracle 介质恢复技术在物理备用数据库上应用重做数据。除传统的 Data Guard 功能外,适用于 Oracle 数据库 11g 的 Active Data Guard 选件 使物理备用数据库可以在应用来自主数据库的更新时开启只读功能。这使物理备用数据库可以减少主数据库在处理只读查询和报表时的负担。这也使得对备用数据库是否时刻与主数据库同步的验证变得简单。 角色管理 使用 Data Guard,数据库的角色可以在确保该过程中没有数据丢失且停机时间最少的前提下从主数据库切换到备用数据库,反之亦然。共有两种角色转换 — 转换和故障切换。转换是主数据库和它的一个备用数据库间的角色调换。通常在主系统计划维护中执行。在转换期间,主数据库将从主数据库角色转换为一个备用角色,而备用数据库将转换为主数据库角色。转换无需重新创建任何数据库。故障切换是备用数据库在主数据库突然中断时切换为主数据库角色。当问题得到修复后,故障主数据库可以使用 Oracle 闪回数据库迅速恢复为新主数据库的备用数据库,大大减少了将配置恢复为受保护状态的时间和工作量。管理员可以选择手动执行故障切换,也可以将 Data Guard 配置为自动检测主数据库故障并自动执行向备用数据库的故障切换(无需人工干预)。 Data Guard 保护模式 在某些情况下,业务数据是无论如何不能丢失的。而在有些情况下,某些应用程序需要最佳的数据库性能并能承担数据丢失风险。Data Guard 提供三种不同的数据保护模式来满足这些不同需求:
Data Guard Broker Oracle Data Guard Broker 是一个分布式管理框架,它不但自动化了 Data Guard 配置的创建、维护和监视,并对这些操作进行统一管理。可以通过 Oracle 企业管理器(它使用 Broker)或 Broker 的专用命令行界面 (DGMGRL) 执行所有管理操作。Data Guard Broker 11 g 还可以使用最大可用性或最佳性能模式将 Data Guard 配置为在数据库出现故障时自动切换。 Oracle Data Guard 11g 中有什么新特性? Data Guard 11 g 使用 Data Guard broker 命令行界面或企业管理器网格控制简化了实施和管理。Data Guard 11 g 增加了新的损坏检测方法,避免了数据丢失并减少了停机时间。Data Guard 11 g 在最大可用性和最佳性能模式中均包含了灵活的配置选项来实现快速、自动的故障切换。Data Guard 11 g 物理备用数据库可以通过在应用处于活动状态时开启只读功能来减少主数据库处理查询和报表时的负担,从而有效地创建高级别的性能保护和对每一个 Data Guard 环境的高级别投资回报。以下的部分将重点介绍 Oracle Data Guard 11g 的主要新特性。有关详细信息,请参见以下内容: 快照备用数据库 这是从物理备用数据库创建的一种新的备用数据库。创建完成后,快照备用数据库可以开启读写功能来处理独立于主数据库的事务,以用于测试或其他目的。快照备用数据库将继续从主数据库接收并存档更新,然而,从主数据库接收到的重做数据在快照备用数据库转变回物理备用数据库后才会得到应用,而作为快照备用数据库时应用到该数据库的所有更新将全部废弃。快照备用数据库开启读写功能后才能从主数据库接收存档数据,这意味着生产数据始终处于受保护状态。 对 Oracle Active Data Guard 选件的支持 Active Data Guard 选件通过将资源密集型负载从生产数据库卸载到一个或多个同步的备用数据库来提升服务质量。Active Data Guard 针对查询、实时报表、基于 Web 的访问等支持对物理备用数据库进行只读访问,同时可继续应用接收自生产数据库的更改。Active Data Guard 还通过支持使用物理备份数据库进行 RMAN 块更改和快速增量备份,消除了在生产数据库上执行备份引起的开销。 故障切换的改进 Data Guard 10 g 第 2 版引入了自动故障切换,通过采用最大可用性保护模式 (SYNC) 的快速启动故障切换这一新特性来实现。Data Guard 11 g 通过添加用户可配置的数据丢失阈值将快速启动故障切换支持扩展到最佳性能模式 (ASYNC) 中,从而确保了自动故障切换永远不会导致数据丢失超过所需的恢复点目标 (RPO)。 增强的数据保护 物理备用数据库可以检测由于以下原因导致的丢失的数据文件写入:存储硬件和固件故障造成主数据库或备用数据库数据损坏。Data Guard 将逐块比较备用数据库和传入重做流的版本。如果版本有差别,将会提示丢失写入。然后用户可以故障切换到备用数据库并还原数据一致性。 重做传输的改进 Data Guard 11 g 实施新的流设计,大大增加了重做传输在最佳性能保护模式中(在异步重做传输期间和使用 ARCn 进程解决间隔时)的吞吐量。这些改进的优点在高延迟 — WAN 环境中 — 将尤为突出。 应用性能的改进 平行介质恢复大大提高了所有负载配置文件的重做应用性能(物理备用数据库)。 临时逻辑备用数据库 用户可以将物理备用数据库转换为临时逻辑备用数据库以实现滚动数据库升级,升级结束后,再将备用数据库恢复为物理备用数据库的原始状态 — 使用 KEEP IDENTITY 子句。这适用于希望执行滚动数据库升级又不想在创建逻辑备用数据库所需的冗余存储设备上进行投资的物理备用数据库用户。 Data Guard 配置的细粒度监视 Oracle 企业管理器已得到改进,可提供对 Data Guard 配置的最新细粒度监视,这样管理员可以针对管理该配置做出有依据且有效的决策。 Data Guard 的 RMAM 改进 RMAN DUPLICATE 可以直接从主数据库在备用系统中创建备用数据库,任一位置都无需任何临时存储。 除之前讨论过的实时查询外,Active Data Guard 选件还支持物理备用数据库上的 RMAN 块更改跟踪,从而实现物理备用数据库的快速增量备份。测试显示,较之传统的增量备份,使用 RMAN 块更改跟踪时以合适的更改速率进行数据库增量备份快达 20 倍。 改善的安全性 SSL 身份验证可用于代替口令文件对重做传输进行身份验证。注意:SSL 身份验证需要使用 PKI 证书、Oracle Advanced Security 选件和 Oracle Internet Directory。 改进的 SQL 应用支持
SQL 应用可管理性 调度程序作业可以使用 DBMS_SCHEDULER 包在备用数据库上创建,并且可以与相应数据库角色相关联以便以所需角色运行(例如,数据库是主数据库、备用数据库或二者兼具)。 Data Guard Broker
企业管理器网格控制 11g
|