Oracle 11gR2 – 如何在2个故障组中的1个故障组发生故障时从正常冗余恢复

背景信息:

  • Oracle 11gR2
  • 2个失败组 – 正常的重复
  • 每个故障组与一个磁盘相关联

失败组阿尔法是一个磁盘1和失败组布拉沃在磁盘2上

我们最近在我们的一台Oracle服务器上遇到了一个问题。 当Oracle运行时,我们的一个磁盘(我们称之为Disk 1 / Failure Group Alpha)失败了。 当我们重新启动服务器时,Oracle不会出现,因为我们没有足够的磁盘来满足我们的冗余要求。

我们怎么能从这个失败中恢复过来?

  • 有没有办法告诉Oracle启动一个失败组的实例,我们不在乎,我们稍后会修复磁盘问题?
  • 或者我们必须在实例重新启动之前popup新的磁盘?

这发生在我们的一个分区,我们想要研究未来可以做些什么…特别是如果没有备用磁盘。

磁盘组不会自动挂载,但可以手动执行:

ALTER DISKGROUP your_disk_group_name MOUNT FORCE

使用FORCE选项安装磁盘组

在FORCE模式下,即使无法发现属于该磁盘组的所有设备,ASM也会尝试装载该磁盘组。 如果正常或高冗余磁盘组中的某些磁盘在卸载磁盘组时不可用,则此设置很有用。

如果ASM发现磁盘组中的所有磁盘,则MOUNT FORCE将失败。 因此,只有在某些磁盘不可用时才使用MOUNT FORCE设置。 否则,使用NOFORCE [默认]。

如果ASM在磁盘组中find至less一个完整的盘区集,则磁盘组装入成功。 如果ASM确定一个或多个磁盘不可用,则ASM会将这些磁盘脱机并在DISK_REPAIR_TIME过期后丢弃磁盘。

在集群ASM环境中,如果ASM实例不是第一个装入磁盘组的实例,则使用MOUNT FORCE语句将失败。 这是因为磁盘已被其他实例访问,并且磁盘不是本地可访问的。