### Oracle 11g R2 RAC OCR磁盘与Votedisk磁盘恢复详解 #### 一、背景介绍 在Oracle RAC环境中,OCR (Oracle Cluster Registry) 和 Votedisk (投票磁盘) 是非常重要的组件,它们对于集群的正常运行至关重要。OCR用于存储集群配置信息,而Votedisk则用于确定集群中的成员资格。当这两个关键组件同时出现故障时,将会导致集群无法正常启动。本文将详细介绍如何在OCR磁盘和Votedisk磁盘全部损坏且无备份的情况下进行快速恢复。 #### 二、故障场景及解决方案概述 假设OCR磁盘和Votedisk磁盘全部损坏,且没有备份。在这种情况下,我们可以通过以下步骤进行恢复: 1. **停止所有节点上的Clusterware Stack**:确保集群处于完全停止状态。 2. **删除安装信息**:分别在每个节点上执行相应的脚本以清除之前的安装信息。 3. **重新安装Clusterware Stack**:在其中一个节点上执行特定脚本以完成重新安装过程。 4. **配置网络服务**:通过`netca`命令重新配置监听器,并确保其注册到Clusterware中。 5. **注册ASM和数据库**:向OCR中添加ASM实例以及数据库实例,并设置依赖关系。 6. **启动数据库**:启动数据库并确保一切正常运行。 #### 三、详细恢复步骤 ##### 1. 停止Clusterware Stack 在所有节点上执行以下命令来停止Clusterware Stack: ```bash crsctl stop crs ``` ##### 2. 删除安装信息 在每个节点上执行以下脚本: ```bash $CRS_HOME/install/rootdelete.sh ``` 确保记录下执行过程中可能出现的所有输出信息,以便后续分析。 ##### 3. 执行根脚本 在步骤2中选择的一个节点上执行: ```bash $CRS_HOME/install/rootdeinstall.sh ``` 然后在同一节点上执行: ```bash $CRS_HOME/root.sh ``` ##### 4. 在其他节点上执行根脚本 在除了步骤3之外的所有节点上执行: ```bash $CRS_HOME/root.sh ``` ##### 5. 配置监听器 通过`netca`命令重新配置监听器,并确保它已成功注册到Clusterware中: ```bash netca ``` 确认`listener`, `ONS`, `GSD`, `VIP`等服务均已正确注册到OCR中。 ##### 6. 注册ASM实例 接下来,我们需要向OCR中添加ASM实例。执行以下命令: ```bash srvctl add asm -ndba1 -i +ASM1 -o /oracle/product/database srvctl add asm -ndba2 -i +ASM2 -o /oracle/product/database ``` 启动ASM实例: ```bash srvctl start asm -ndba1 srvctl start asm -ndba2 ``` 如果启动第二个ASM实例时遇到ORA-27550错误,则可以通过在ASM实例的PFILE中添加以下参数来解决此问题: ```bash +ASM1.cluster_interconnects='10.0.0.11' +ASM2.cluster_interconnects='10.0.0.12' ``` 然后重启ASM实例。 ##### 7. 注册数据库实例 向OCR中添加数据库实例: ```bash srvctl add database -d PROD -o /oracle/product/database ``` 接着,为数据库添加实例: ```bash srvctl add instance -d PROD -i PROD1 -ndba1 srvctl add instance -d PROD -i PROD2 -ndba2 ``` ##### 8. 设置依赖关系 为了确保ASM实例与数据库实例之间的正确依赖关系,执行以下命令: ```bash srvctl modify instance -d PROD -i PROD1 -s +ASM1 srvctl modify instance -d PROD -i PROD2 -s +ASM2 ``` ##### 9. 启动数据库 尝试启动数据库: ```bash srvctl start database -d PROD ``` 如果在启动数据库时遇到类似启动ASM实例时的问题(ORA-27550),可以按照之前的方式解决,即通过修改数据库参数文件: ```sql ALTER SYSTEM SET cluster_interconnects='10.0.0.11' SCOPE=SPFILE SID='PROD1'; ALTER SYSTEM SET cluster_interconnects='10.0.0.12' SCOPE=SPFILE SID='PROD2'; ``` 再次启动数据库: ```bash srvctl start database -d PROD ``` #### 四、总结 以上步骤提供了在OCR磁盘和Votedisk磁盘全部损坏且没有备份的情况下进行快速恢复的方法。需要注意的是,在实际操作过程中,应仔细记录每一步的操作结果,以便于后期排查潜在的问题。此外,建议定期备份OCR和Votedisk以避免类似故障的发生,确保系统高可用性和稳定性。
- 粉丝: 2
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助