定义 Oracle 数据库的还原和恢复策略
您必须在还原和恢复数据库之前定义一个策略,以便能够成功执行还原和恢复操作。
还原和恢复操作支持的备份类型
SnapCenter支持不同类型的 Oracle 数据库备份的还原和恢复。
-
在线数据备份
-
离线关机数据备份
-
离线挂载数据备份
如果您正在恢复脱机关闭或脱机挂载数据备份, SnapCenter会使数据库保持脱机状态。您应该手动恢复数据库并重置日志。 -
完整备份
-
Data Guard 备用数据库的离线备份
-
Active Data Guard 备用数据库的仅数据在线备份
您无法执行 Active Data Guard 备用数据库的恢复。 -
真实应用集群 (RAC) 配置中的在线数据备份、在线完整备份、离线挂载备份和离线关机备份
-
自动存储管理 (ASM) 配置中的在线数据备份、在线完整备份、离线挂载备份和离线关机备份
Oracle 数据库支持的还原方法类型
SnapCenter支持 Oracle 数据库的连接和复制或就地还原。在还原操作期间, SnapCenter会确定适合文件系统的还原方法,以便用于还原而不会丢失任何数据。
|
|
SnapCenter不支持基于卷的SnapRestore。 |
连接并复制恢复
如果数据库布局与备份不同,或者在创建备份后有任何新文件,则执行连接和复制还原。在连接和复制还原方法中,执行以下任务:
步骤
-
该卷是从快照克隆的,并且使用克隆的 LUN 或卷在主机上构建文件系统堆栈。
-
文件从克隆的文件系统复制到原始文件系统。
-
然后从主机上卸载克隆的文件系统,并从ONTAP中删除克隆的卷。
|
|
对于 Flex ASM 设置(基数小于 RAC 集群中的节点数)或 VMDK 或 RDM 上的 ASM RAC 数据库,仅支持连接和复制恢复方法。 |
即使您已强制启用就地还原, SnapCenter也会在以下情况下执行连接和复制还原:
-
从辅助存储系统恢复
-
还原未配置数据库实例的 Oracle RAC 设置节点上的 ASM 磁盘组
-
在 Oracle RAC 设置中,如果 ASM 实例或集群实例未运行,或者对等节点已关闭,则在任何对等节点上
-
仅恢复控制文件
-
恢复位于 ASM 磁盘组上的表空间子集
-
数据文件、sp文件、密码文件共享磁盘组
-
SnapCenter插件Loader(SPL) 服务未安装或未在 RAC 环境中的远程节点上运行
-
新节点已添加到 Oracle RAC,而SnapCenter服务器不知道新添加的节点
就地还原
如果数据库布局与备份类似,并且在存储和数据库堆栈上没有发生任何配置更改,则执行就地还原,其中在ONTAP上执行文件或 LUN 的还原。 SnapCenter仅支持单文件SnapRestore (SFSR) 作为就地恢复方法的一部分。
|
|
NetApp ONTAP支持从辅助位置进行就地恢复。 |
如果要在数据库上执行就地恢复,请确保 ASM 磁盘组上只有数据文件。对 ASM 磁盘组或数据库的物理结构进行任何更改后,都必须创建备份。执行就地恢复后,磁盘组将包含与备份时相同数量的数据文件。
当磁盘组或挂载点符合以下条件时,将自动应用就地还原:
-
备份后没有添加新的数据文件(外部文件检查)
-
备份后不添加、删除或重新创建 ASM 磁盘或 LUN(ASM 磁盘组结构变化检查)
-
不向 LVM 磁盘组添加、删除或重新创建 LUN(LVM 磁盘组结构变化检查)
|
|
您还可以使用 GUI、 SnapCenter CLI 或 PowerShell cmdlet 强制启用就地还原,以覆盖外部文件检查和 LVM 磁盘组结构更改检查。 |
在 ASM RAC 上执行就地恢复
在SnapCenter中,执行还原的节点称为主节点,而 ASM 磁盘组所在的 RAC 的所有其他节点称为对等节点。在执行存储还原操作之前, SnapCenter会在 ASM 磁盘组处于挂载状态的所有节点上将 ASM 磁盘组的状态更改为卸载。存储恢复完成后, SnapCenter会将 ASM 磁盘组的状态更改为恢复操作之前的状态。
在 SAN 环境中, SnapCenter会从所有对等节点中删除设备,并在存储恢复操作之前执行 LUN 取消映射操作。存储恢复操作后, SnapCenter执行 LUN 映射操作并在所有对等节点上构建设备。在 SAN 环境中,如果 Oracle RAC ASM 布局驻留在 LUN 上,则在还原SnapCenter时,会在 ASM 磁盘组所在的 RAC 集群的所有节点上执行 LUN 取消映射、LUN 还原和 LUN 映射操作。即使在还原之前 RAC 节点的所有启动器都未用于 LUN,还原之后SnapCenter也会使用所有 RAC 节点的所有启动器创建一个新的 iGroup。
-
如果对等节点上的预还原活动期间出现任何故障, SnapCenter会自动将 ASM 磁盘组状态回滚到在预还原操作成功的对等节点上执行还原之前的状态。主节点和操作失败的对等节点不支持回滚。在尝试另一次恢复之前,您必须手动修复对等节点上的问题,并将主节点上的 ASM 磁盘组恢复到安装状态。
-
如果恢复活动期间出现任何故障,则恢复操作失败并且不会执行回滚。在尝试另一次恢复之前,您必须手动修复存储恢复问题并使主节点上的 ASM 磁盘组恢复到安装状态。
-
如果任何对等节点上的恢复后活动期间出现任何故障, SnapCenter将继续在其他对等节点上执行恢复操作。您必须手动修复对等节点上的恢复后问题。
Oracle 数据库支持的还原操作类型
SnapCenter使您能够对 Oracle 数据库执行不同类型的恢复操作。
在恢复数据库之前,将验证备份以确定与实际数据库文件相比是否缺少任何文件。
完全恢复
-
仅恢复数据文件
-
仅恢复控制文件
-
恢复数据文件和控制文件
-
恢复 Data Guard 备用数据库和 Active Data Guard 备用数据库中的数据文件、控制文件和重做日志文件
部分恢复
-
仅恢复选定的表空间
-
仅恢复选定的可插拔数据库 (PDB)
-
仅恢复 PDB 的选定表空间
Oracle 数据库支持的恢复操作类型
SnapCenter使您能够对 Oracle 数据库执行不同类型的恢复操作。
-
数据库直到最后事务(所有日志)
-
数据库达到特定的系统变更号(SCN)
-
数据库直到特定的日期和时间
您必须根据数据库主机的时区指定恢复的日期和时间。
SnapCenter还为 Oracle 数据库提供了无恢复选项。
|
|
如果您使用以数据库角色作为备用创建的备份进行恢复,则 Oracle 数据库插件不支持恢复。您必须始终对物理备用数据库执行手动恢复。 |
与 Oracle 数据库还原和恢复相关的限制
在执行还原和恢复操作之前,您必须了解其限制。
如果您使用的是 Oracle 11.2.0.4 至 12.1.0.1 中的任何版本,则运行 renamedg 命令时还原操作将处于挂起状态。您可以应用 Oracle 补丁 19544733 来修复此问题。
不支持以下还原和恢复操作:
-
根容器数据库 (CDB) 表空间的还原和恢复
-
恢复临时表空间和与 PDB 关联的临时表空间
-
同时从多个 PDB 还原和恢复表空间
-
恢复日志备份
-
将备份恢复到其他位置
-
在 Data Guard 备用数据库或 Active Data Guard 备用数据库以外的任何配置中恢复重做日志文件
-
恢复 SPFILE 和密码文件
-
当您对使用同一主机上预先存在的数据库名称重新创建、由SnapCenter管理且具有有效备份的数据库执行还原操作时,还原操作会覆盖新创建的数据库文件,即使 DBID 不同。
可以通过执行以下操作之一来避免这种情况:
-
重新创建数据库后发现SnapCenter资源
-
创建重新创建的数据库的备份
-
与表空间的时间点恢复相关的限制
-
不支持 SYSTEM、SYSAUX 和 UNDO 表空间的时间点恢复 (PITR)
-
表空间的 PITR 不能与其他类型的恢复一起执行
-
如果表空间被重命名,并且您想要将其恢复到重命名之前的某个时间点,则应指定表空间的早期名称
-
如果一个表空间中的表的约束包含在另一个表空间中,则应该恢复这两个表空间
-
如果表及其索引存储在不同的表空间中,则应在执行 PITR 之前删除索引
-
PITR 不能用于恢复当前默认表空间
-
PITR 不能用于恢复包含以下任何对象的表空间:
-
具有底层对象(例如物化视图)或包含对象(例如分区表)的对象,除非所有底层对象或包含对象都在恢复集中
此外,如果分区表的分区存储在不同的表空间中,那么您应该在执行 PITR 之前删除该表,或者在执行 PITR 之前将所有分区移动到同一个表空间。
-
撤消或回滚段
-
具有多个接收者的 Oracle 8 兼容高级队列
-
SYS 用户拥有的对象
这些类型的对象的示例有 PL/SQL、Java 类、调用程序、视图、同义词、用户、权限、维度、目录和序列。
-
还原 Oracle 数据库的源和目标
您可以从主存储或辅助存储上的备份副本恢复 Oracle 数据库。您只能将数据库恢复到同一数据库实例上的同一位置。但是,在 Real Application Cluster (RAC) 设置中,您可以将数据库恢复到其他节点。
恢复操作的来源
您可以从主存储或辅助存储上的备份恢复数据库。如果要从多镜像配置中的辅助存储上的备份进行恢复,则可以选择辅助存储镜像作为源。
恢复操作的目标
您只能将数据库恢复到同一数据库实例上的同一位置。
在 RAC 设置中,您可以从集群中的任何节点恢复 RAC 数据库。