阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Oracle RAC OCR盘故障导致的集群重启恢复

179次阅读
没有评论

共计 1339 个字符,预计需要花费 4 分钟才能阅读完成。

一、事故说明

最近出现了一次 OCR 盘的故障导致 Oracle 集群件宕机的事故,后以独占模式启动集群,并使用 ocr 备份恢复了 OCR 文件以及重新设置了 vote disk,然后关闭集群,重启成功。

因此在此处进行事故重现以吸取教训。
 
二、重现步骤
测试 RAC 环境中只有 +OCR 和 +DATA 两个 ASM 磁盘组。
1. 做好 ocr 的手工备份

[root@node1 ~]# ocrconfig -export /home/oracle/ocr.bak

紧急情况下没有 ocr 的备份也不要紧,在 $CRS_HOME 的 cdata 目录下有 ocr 的自动备份,默认每天和每周都会保存的,只要没做过架构变更,都一直可用。

2. 如果 asm 实例的参数文件也在 OCR 盘中,则做一次 ASM 参数文件的备份。(不做也没事,$crs_home/dbs 下有 init.ora 文件, 事实上默认配置下这一步可以忽略)

su – grid
sqlplus / as sysasm
create pfile=’/home/grid/initasm.ora’ from memory;

3.dd 清除 OCR 的磁盘头信息。

[root@node1 ~]# dd if=/dev/zero of=/dev/raw/raw1 bs=1024 count=1000

4. 强制关闭集群。

crsctl stop crs -f – 两节点都做

5. 以独占模式启动节点 1GRID 组件

crsctl start crs -excl -nocrs – 只在节点 1 执行

6. 观察启动过程中的集群日志以及集群资源状态。

tail -f /u01/11.2.0/grid/log/node1/alertnode1.log
crsctl stat res -t -init

日志里可以看到 ora.asm 资源在不能识别到 OCR 盘的情况下启动了,即 ASM 实例启动了,因此接下来可以进行其他操作。

7. 创建 +OCR 盘以取代之前的 +OCR 盘。

su – grid
sqlplus / as sysasm
create diskgroup OCR external redundancy disk ‘/dev/raw/raw1’ attribute ‘compatible.asm’=’11.2.0.0.0’, ‘compatible.rdbms’=’11.2.0.0.0’;

此时 asmcmd 中只能看到 OCR 盘:

Oracle RAC OCR 盘故障导致的集群重启恢复

8. 恢复 OCR 文件并设置 votedisk

su – root
ocrconfig -import /home/oracle/ocr.bak – 如果使用的是自动备份,则这里需要使用 -restore 来替换 -import
ocrcheck
 
[root@node1 oracle]# crsctl replace votedisk +OCR

Oracle RAC OCR 盘故障导致的集群重启恢复

9. 关闭集群并重启

su root
crsctl stop crs -f
crsctl start crs – 节点 1、2 都执行

三、总结
经过以上步骤就可以实现 votedisk 和 OCR 的重新配置了,注意到为了实现快速故障恢复,我这里新建的 ASM 磁盘组名字依然是 OCR。

更多 Oracle 相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/142081.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计1339字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中