ITPub博客

首页 > 数据库 > Oracle > 11G RAC 节点删除与添加

11G RAC 节点删除与添加

原创 Oracle 作者:蒙娜丽莎的大嘴唇儿 时间:2019-06-13 11:08:07 0 删除 编辑

RAC删除节点并添加节点

oracle用户更新Inventory

$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES=zycdbtst3" -local

删除db软件

$ORACLE_HOME/deinstall/deinstall -local

再在其他主机oracle 用户更新Inventory

$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={zycdbtst1,zycdbtst2}" -local

$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={zycdbtst1,zycdbtst2}" -local


删除节点

更新GI的inventory


更新grid 用户Inventory

$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME "CLUSTER_NODES={zycdbtst3}" CRS=TRUE -silent -local

(cluster_nodes中输入的是要删除的节点名称)

卸载GI

$ORACLE_HOME/deinstall/deinstall -local


再到正常的节点上分别更新Inventory信息

$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={zycdbtst1,zycdbtst2}" CRS=TRUE -silent -local

$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={zycdbtst1,zycdbtst2}" CRS=TRUE -silent -local

在保留节点上删除 要剔除的节点

crsctl delete node -n zycdbtst3



实例删除(未操作)



查询状态

olsnodes -s

以上为删除操作


==========================================================================================================================================================================================================================================================================================


添加节点



在已存在的节点运行如下脚本


$ORACLE_HOME/oui/bin/addNode.sh -silent "CLUSTER_NEW_NODES={zdata-db03,zdata-db04}"“CLUSTER_NEW_VIRTUAL_HOSTNAMES={zdata-db03-vip,zdata-db04-vip}" 


检查之后 可以忽略NTP错误 ;ORACLE_HOME无法share:在新节点直接重建或检查权限(重建比较方便一点)


若只有NTP错误。export IGNORE_PREADDNODE_CHECKS=Y,然后运行

$ORACLE_HOME/oui/bin/addNode.sh -silent "CLUSTER_NEW_NODES={zdata-db03,zdata-db04}"“CLUSTER_NEW_VIRTUAL_HOSTNAMES={zdata-db03-vip,zdata-db04-vip}" 

copy 文件的进程比较慢。这里可能出现的问题主要是Inventory.xml 文件错误导致的,该文件的位置是可以通过  cat /etc/oraInst.loc 进行查找


successful之后 在 添加节点 上用root 跑两个脚本

orainstRoot.sh、root.sh

第一个脚本会跑得非常顺利,第二个脚本可能遇到各种问题,下面是这次安装碰到的坑


Using configuration parameter file: /crs11g/grid/11.2.0.3/crs/install/crsconfig_params

User ignored Prerequisites during installation

Failed to write the checkpoint:'' with status:FAIL.Error code is 256

Undefined subroutine &crsconfig_lib::dieformat called at /crs11g/grid/11.2.0.3/crs/install/crsconfig_lib.pm line 6146.

/crs11g/grid/11.2.0.3/perl/bin/perl -I/crs11g/grid/11.2.0.3/perl/lib -I/crs11g/grid/11.2.0.3/crs/install /crs11g/grid/11.2.0.3/crs/install/rootcrs.pl execution failed


当我们再次执行该语句时。提示无法找到相关文件

这里我们升级了yum源。然后就在 相关文件做了软链接,接下来才可以继续执行。


root.sh执行完了之后,就可以继续安装DB软件了。


在执行安装DB软件的时候,应该在已有DB软件的节点上执行相关命令:

export IGNORE_PREADDNODE_CHECKS=Y

$ORACLE_HOME/oui/bin//addNode.sh -silent "CLUSTER_NEW_NODES={zycdbtst3}" "CLUSTER_NEW_NODES_VIP={zycdbtst3-vip}"


若该命令无法将DB软件拷贝到目标节点时。可以手动将已有集群DB软件cp到目标文件:


步骤如下

1.从其他主机上压缩数据库软件


用root用户压缩:


tar cvf Oracle.tar /oracle/product/db11gr2($ORACLE_HOME)

2.用root用户tar数据库软件包Oracle .tar


解压tar -xvf Oracle .tar


配置/etc/oraInst.loc文件


oracle@Ttest55:/oracle/admin/audit/bdump/cat /etc/oraInst.loc


inventory_loc=/home/oracle/oraInventory


inst_group=oinstall


3.relink命令:


$ cd $ORACLE_HOME/oui/bin/


$./runInstaller  -invPtrLoc /etc/oraInst.loc -silent -clone ORACLE_BASE='/oracle/product' ORACLE_HOME='/oracle/product/db11gr2' ORACLE_HOME_NAME='oracle_home1'


其中ORACLE_HOME根据实际的$ORACLE_HOME来写,ORACLE_HOME_NAME可随便取名


relink完后需要用root用户执行脚本(视具体路径)


#sh /oracle/product/10205/root.sh

如果手动安装DB软件的话,需要自己分别到各个节点,手动将ORACLE_HOME下的inventory.xml  文件进行更新。如下所示:


$ORACLE_HOME/oui/bin/runInstaller -updateNodelist ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={zycdbtst1,zycdbtst2,zycdbtst3}" -local


然后进行实例切换或启动,验证安装是否完成


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31561453/viewspace-2647496/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Oracle的分区表
请登录后发表评论 登录
全部评论
努力将甲骨文翻译成白话文的小白

注册时间:2018-11-12

  • 博文量
    11
  • 访问量
    17463