Oracle 11gR2-当2个故障组之一出现故障时如何从普通冗余中恢复


11

背景信息:

  • 甲骨文11gR2
  • 2个故障组-正常冗余
  • 与单个磁盘关联的每个故障组

故障组Alpha是一个磁盘1,故障组Bravo在磁盘2上

我们最近在我们的一台Oracle服务器上遇到了问题。Oracle运行时,我们的一个磁盘(我们称其为磁盘1 /故障组Alpha)发生了故障。重新启动服务器时,Oracle不会启动,因为我们没有足够的磁盘来满足冗余需求。

我们如何从这种失败中恢复?

  • 有没有办法告诉Oracle在故障组关闭的情况下启动实例,我们不在乎,我们稍后会解决磁盘问题?
  • 还是我们必须弹出一个新磁盘才能再次启动该实例?

这是在我们的暂存区域中发生的,并且我们希望找出将来可以做的事情……尤其是在没有备用磁盘的情况下。


这是一个有点危险的想法,尤其是如果两个磁盘相关联(相同的型号,相同的制造运行),并且更有可能在相同的时间失效。除非您实际上并不关心数据,否则我建议您保留备用磁盘(或者,如果您负担得起的话,可以使用在线备用磁盘)。
zebediah49 2011年

您是否尝试过使用DROP DISKGROUP .... FORCE删除故障的磁盘组?Oracle文档
MunsterNet,2011年

我认为要正确解决此问题,您需要授予Oracle对您公司的银行帐户的无限访问权限。
汤姆·奥康纳

1
@MunsterNet您已将“磁盘组”与“故障组”相混淆。您建议的DROP DISKGROUP命令最有可能导致意外的和不必要的数据丢失。
kubanczyk

Answers:


1

磁盘组不会自动挂载,但是您可以手动安装它:

ALTER DISKGROUP your_disk_group_name安装力

使用FORCE选项挂载磁盘组

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

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

如果ASM在磁盘组中找到至少一组完整的扩展区,则磁盘组安装成功。如果ASM确定一个或多个磁盘不可用,则DISM_REPAIR_TIME到期后,ASM会将这些磁盘脱机并丢弃磁盘。

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.