前面搭建了一个11g的环境,由于本本资源有限,同时跑两个节点比较吃力,所以就删除一个节点(db01)。这里分享下操作过程。

1、确保grid的家目录是存在的并且在grid用户的环境变量中正确定义。

2、检查Cluster Synchronization Services (CSS)进程是否运行在各个节点上。这里用到olsnodes命令并且以grid身份运行,具体操作如下所示:

p_w_picpath

以上输出含义是css服务在两个节点正常运行并且状态是 active和unpinned,如果是unpinned,则不需要运行crsctl unpin css命令。如果是pinned状态,则需要将其状态更改为unpinned。在这里注意,如果css进程没有运行在各个节点上,则在运行 crsctl unpin css 命令时会失败的。

3、在即将被删除的节点上禁用Oracle Clusterware applications and daemons。以root身份运行rootcrs.pl脚本。此脚本位于$ORACLE_HOME/crs/install目录中。此处的变量$ORACLE_HOME是指grid用户的,而非oracle用户的。在执行之前,先停止emagent。

Deleting a Cluster Node In Oracle 11gR2 RAC_第1张图片

接着以root身份运行rootcrs.pl禁用服务:

Deleting a Cluster Node In Oracle 11gR2 RAC_第2张图片

p_w_picpath

如果删除的节点是最后一个节点在执行rootcrs.pl –deconfig –force –lastnode命令。

4、在另外一个节点以root身份执行以下命令:

p_w_picpath

5、在要删除的节点上删除之前的配置信息:

Deleting a Cluster Node In Oracle 11gR2 RAC_第3张图片

Deleting a Cluster Node In Oracle 11gR2 RAC_第4张图片

Deleting a Cluster Node In Oracle 11gR2 RAC_第5张图片

Deleting a Cluster Node In Oracle 11gR2 RAC_第6张图片

db02上执行上述命令:

Deleting a Cluster Node In Oracle 11gR2 RAC_第7张图片

Deleting a Cluster Node In Oracle 11gR2 RAC_第8张图片

Deleting a Cluster Node In Oracle 11gR2 RAC_第9张图片

以上操作执行完成后,db01上的grid软件被删除了,db02上cluster服务起不来了,至于具体原因正在查找中…..有遇到过类似问题的朋友还请指教指教,Thanks!!!

具体描述请参考oracle官方文档:Oracle? Real Application Clusters Administration and Deployment Guide 11g Release 2 (11.2)