oracle11g rac 如何删除损坏节点并添加新节点
2017-10-25 23:24
351 查看
今天是2017年10月25日,之前遇到一个客户来电,大体问题是:aix 5.3+oracle 11.2.0.1 数据库为rac。其中节点一因为本地主机磁盘损坏,导致aix系统损坏进而导致了oracle rac集群只剩一个节点的故障”
对于该问题,其实很简单,只要在存活节点删除之前数据库实例,在集群中删除故障节点信息后,新增节点即可。但在整个过程中遇到了各类问题(个人根据当时现状了解到,在我接手之前,已经被别人操作了太多东西)。特此记录下当时我处理问题的简要步骤以及遇到的各类问题:
操作步骤:
1、在存活节点查看节点信息是否为unpin状态,如果不是使用下面命令,将节点设置为unpin状态
2、在存活节点使用oracle账号通过dbca删除故障节点实例
3、在存活节点更新列表目录用户为oracle,命令如下:
4、使用crsctl stat res -t 查看是否有故障节点vip,如果存在手动删除服务,删除节点
5、更新集群列表信息使用grid用户:
6、在新节点创建好对应grid 所使用的目录,创建好oracle 所使用的目录(注意审计目录一定要有)
注意:oraInventory目录不可少,并且是属主为grid用户
7、在存活节点使用grid用户对新增节点进行验证:
验证并确定结果无误后方可执行下步操作(确定好有些问题是否可以忽略)
8、将新增节点加入集群中。执行如下命令:
正常情况下,会自动将grid的集群软件文件自动复制到新增节点上去。最后会提示在新增节点执root执行root.sh (orainstRoot.sh)
问题1:在执行addnode.sh 失败提示如下:
那么这个时候需要对inventory.xml 这个文件进行检查里面是否home设置正确。或者可以使用
./detachHome.sh 和 ./attachHome.sh 命令进行创建该文件。
但是我发现我重建该文件后,报如下错误:
那么如果出现这类问题,请使用ui登陆系统然后使用grid用户重新执行创建这个xml文件即可。
问题2:在执行root.sh 如果失败
请使用如下命令执行后重新执行root.sh:
问题3、如果在执行root.sh 将节点加入集群中的时候,莫名奇妙存活节点如果重启那么需要检查设置为asm 磁盘是否为共享读写状态,命令如下:
在节点创建完成后,下一步开始创建数据库实例:
9、使用oracle用户执行如下命令:
10.创建完成后,需要手动更改下新增节点的密码文件、参数文件名字。
注意:如果使用addnode.sh 命令无法完成,可以直接将oracle软件复制到新增节点(不用执行root.sh)。然后手动将数据库实例和数据库服务的注册到集群中。
至此完成rac新增节点操作。
对于该问题,其实很简单,只要在存活节点删除之前数据库实例,在集群中删除故障节点信息后,新增节点即可。但在整个过程中遇到了各类问题(个人根据当时现状了解到,在我接手之前,已经被别人操作了太多东西)。特此记录下当时我处理问题的简要步骤以及遇到的各类问题:
操作步骤:
1、在存活节点查看节点信息是否为unpin状态,如果不是使用下面命令,将节点设置为unpin状态
crsctl unpin css -n(节点主机名)
2、在存活节点使用oracle账号通过dbca删除故障节点实例
3、在存活节点更新列表目录用户为oracle,命令如下:
cd $ORACLE_HOME/oui/bin gui/bin ./runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES=zz-pthisd1"
4、使用crsctl stat res -t 查看是否有故障节点vip,如果存在手动删除服务,删除节点
srvctl stop vip -i racsrv4 -f srvctl remove vip -i racsrv4 -f crsctl delete node -n racsrv4(删除节点) cluvfy stage -post nodedel -n raccrsv4(验证节点是否被删除)
5、更新集群列表信息使用grid用户:
cd $ORACLE_HOME/oui/bin ./runInstaller -updateNodeList ORACLE_HOME=/u01/app/11.2.0/grid "CLUSTER_NODES={zz-pthisd1}" CRS=TRUE -silent
6、在新节点创建好对应grid 所使用的目录,创建好oracle 所使用的目录(注意审计目录一定要有)
注意:oraInventory目录不可少,并且是属主为grid用户
7、在存活节点使用grid用户对新增节点进行验证:
./cluvfy stage -pre nodeadd -n zz-pthisd2 -fixup –verbose
验证并确定结果无误后方可执行下步操作(确定好有些问题是否可以忽略)
8、将新增节点加入集群中。执行如下命令:
因为之前已经校验了所以可以设置export IGNORE_PREADDNODE_CHECKS=Y参数 在存活节点进入grid用户执行如下命令: ./addNode.sh -silent \ "CLUSTER_NEW_NODES={racsrv4}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={racsrv4-vip}" \ "CLUSTER_NEW_PRIVATE_NODE_NAMES={racsrv4-priv}" &>~/add_node.log
正常情况下,会自动将grid的集群软件文件自动复制到新增节点上去。最后会提示在新增节点执root执行root.sh (orainstRoot.sh)
问题1:在执行addnode.sh 失败提示如下:
Error ocurred while retrieving node numbers of the existing nodes. Please check if clusterware home is properly configured. SEVERE:Error ocurred while retrieving node numbers of the existing nodes. Please check if clusterware home is properly configured.
那么这个时候需要对inventory.xml 这个文件进行检查里面是否home设置正确。或者可以使用
./detachHome.sh 和 ./attachHome.sh 命令进行创建该文件。
但是我发现我重建该文件后,报如下错误:
zz-pthisd1:[grid]:/oracle/soft/grid$cd $ORACLE_HOME/oui/bin zz-pthisd1:[grid]:/oracle/grid/oui/bin$R_NEW_VIRTUAL_HOSTNAMES={zz-pthisd2-vip}" \ "CLUSTER_NEW_PRIVATE_NODE_NAMES={zz-pthisd2-priv}" &>~/add_node.log < [1] 22413322 zz-pthisd1:[grid]:/oracle/grid/oui/bin$Starting Oracle Universal Installer... Checking swap space: must be greater than 500 MB. Actual 2048 MB Passed zz-pthisd1:[grid]:/oracle/grid/oui/bin$Oracle Universal Installer, Version 11.2.0.1 .0 Production Copyright (C) 1999, 2009, Oracle. All rights reserved. Exception java.lang.NullPointerException occurred.. java.lang.NullPointerException at oracle.sysman.oii.oiic.OiicAddNodeSession.initialize(OiicAddNodeSession.java:528) at oracle.sysman.oii.oiic.OiicAddNodeSession.<init>(OiicAddNodeSession.java:133) at oracle.sysman.oii.oiic.OiicSessionWrapper.createNewSession(OiicSessionWrapper.java:884) at oracle.sysman.oii.oiic.OiicSessionWrapper.<init>(OiicSessionWrapper.java:191) at oracle.sysman.oii.oiic.OiicInstaller.init(OiicInstaller.java:512) at oracle.sysman.oii.oiic.OiicInstaller.runInstaller(OiicInstaller.java:968) at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:906) SEVERE:Abnormal program termination. An internal error has occured. Please provide the following files to Oracle Support : "/oracle/app/oraInventory/logs/addNodeActions2017-10-10_01-24-23PM.log" "Unknown" "Unknown" [1] + Done(255) ./addNode.sh -silent \ "CLUSTER_NEW_NODES={zz-pthisd2}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={zz-pthisd2-vip}" \ "CLUSTER_NEW_PRIVATE_NODE_NAMES={zz-pthisd2-priv}" &>~/add_node.log zz-pthisd1:[grid]:/oracle/grid/oui/bin$ zz-pthisd1:[grid]:/oracle/grid/oui/bin$
那么如果出现这类问题,请使用ui登陆系统然后使用grid用户重新执行创建这个xml文件即可。
问题2:在执行root.sh 如果失败
OLR initialization - successful CRS-2728: A resource type with the name 'ora.daemon.type' is already registered CRS-4000: Command Add failed, or completed with errors. CRS-2728: A resource type with the name 'ora.haip.type' is already registered CRS-4000: Command Add failed, or completed with errors. CRS-2728: A resource type with the name 'ora.mdns.type' is already registered CRS-4000: Command Add failed, or completed with errors. Failed to register Grid Infrastructure type ora.mdns.type at /u01/app/11.2.0/grid/crs/install/crsconfig_lib.pm line 7940. /u01/app/11.2.0/grid/perl/bin/perl -I/u01/app/11.2.0/grid/perl/lib -I/u01/app/11.2.0/grid/crs/install /u01/app/11.2.0/grid/crs/install/rootcrs.pl execution failed
请使用如下命令执行后重新执行root.sh:
cd /u01/app/11.2.0/grid/crs/install ./rootcrs.pl -deconfig -force
问题3、如果在执行root.sh 将节点加入集群中的时候,莫名奇妙存活节点如果重启那么需要检查设置为asm 磁盘是否为共享读写状态,命令如下:
lsattr –El hdisk5 | grep reserve 如果查看到的是reserve_policy状态,那么需要使用如下命令设置为共享读写: chdev -l hdisk5 -a reserve_policy=no_reserve
在节点创建完成后,下一步开始创建数据库实例:
9、使用oracle用户执行如下命令:
./addNode.sh -silent "CLUSTER_NEW_NODES={racsrv4}" 完成后执行相应的root.sh 文件
10.创建完成后,需要手动更改下新增节点的密码文件、参数文件名字。
注意:如果使用addnode.sh 命令无法完成,可以直接将oracle软件复制到新增节点(不用执行root.sh)。然后手动将数据库实例和数据库服务的注册到集群中。
至此完成rac新增节点操作。
相关文章推荐
- 如何在SolrCloud中添加删除节点
- oracle11g r2 rac环境添加节点
- rhel7.2 + Oracle 11.2.0.4 RAC删除添加节点操作
- 如何在 SQL Server 2005 故障转移群集中添加或删除节点(安装程序)
- RAC知识更新之-RAC节点删除添加服务+维护RAC ocr表(摘自文平书)
- 10g rac节点的添加和删除
- oracle11g r2 rac环境删除节点步骤
- oracle11g RAC添加节点
- 微图中如何添加线、编辑线节点和删除线条
- 如何让SiteMapPath动态添加节点,修改,删除
- rac节点添加和删除
- 11G R2 RAC添加删除节点
- ASP.NET - 如何:添加或删除 TreeView 节点元素
- 10G RAC删除和添加节点
- oracle10g rac 添加和删除节点
- Oracle11g_RAC_OELR5-U4_iSCSI(非域名解析)-添加第三个节点
- RAC添加删除节点实例
- 【RAC】oracle11g r2 rac环境删除节点步骤
- 环境变量【详解】—如何在cmd命令行中查看、修改、删除与添加环境变量
- Redhat 5.4 Oracle 10g RAC 添加节点