Oracle 10g 增删节点

来源:这里教程网 时间:2026-03-03 16:25:57 作者:

   环境说明 ... 4 . 删除目标节点: 4 2.1 目标停节点服务 ... 4 2.2 删除目标节点database . 5 2.2 删除目标节点asm .. 9 2.3 删除目标节点监听 ... 9 2.4 删除目标节点 ... 11 2.4.1 主节点更新oracle Inventory ... 11 2.4.2 目标节点更新oracle Inventory . 12 2.4.3 目标节点删除数据库软件 ... 12 2.4.4 删除目标节点ONS 配置及nodeapps 13 2.4.5 目标节点删除集群软件 ... 14 2.4.6 ocr 删除节点信息 ... 15 2.4.7 检查crs_stat -t -v . 16 . 添加新节点 ... 18 3.1 预检查 ... 18 3.2 为新节点安装集群软件 ... 18 3.3 为新节点安装数据库软件 ... 21 3.4 为新节点配置监听 ... 22 3.5 为新节点创建实例 ... 23   

说明

  环境说明

目前数据库为10gRAC 环境(10.2.0.4) ,操作系统为 hp-unix ,采用ASM 磁盘组, 环境如下:

操作系统: HP 数据库: 10.2.0.4 数据文件存储方式: ASM

数据量: 131GB

Data 盘大小: 800000MB

. 删除目标节点:

2.1 目标停节点服务

在节点 1 执行对目标节点资源的停止任务,一定要手动执行停止操作,即使显示 offline     [oracle@rac2 ~]$ crs_stat -t Name           Type           Target    State     Host        ------------------------------------------------------------ ora.orcl.db    application    ONLINE    ONLINE    rac1        ora....l1.inst application    ONLINE    ONLINE    rac1        ora....l2.inst application    ONLINE    ONLINE    rac2        ora....SM1.asm application    ONLINE    ONLINE    rac1        ora....C1.lsnr application    ONLINE    ONLINE    rac1        ora.rac1.gsd   application    ONLINE    ONLINE    rac1        ora.rac1.ons   application    ONLINE    ONLINE    rac1        ora.rac1.vip   application    ONLINE    ONLINE    rac1        ora....SM2.asm application    ONLINE    ONLINE    rac2        ora....C2.lsnr application    ONLINE    ONLINE    rac2        ora.rac2.gsd   application    ONLINE    ONLINE    rac2        ora.rac2.ons   application    ONLINE    ONLINE    rac2        ora.rac2.vip   application    ONLINE    ONLINE    rac2              [root@rac1 bin]# ./srvctl stop inst -d orcl -i orcl2 [root@rac1 bin]# ./srvctl stop nodeapps -n rac2 [root@rac1 bin]# ./srvctl stop listener -n rac2 [root@rac1 bin]# ./srvctl stop asm -n rac2 [root@rac1 bin]# ./crs_stat -t Name           Type           Target    State     Host        ------------------------------------------------------------ ora.orcl.db    application    ONLINE    ONLINE    rac1        ora....l1.inst application    ONLINE    ONLINE    rac1        ora....l2.inst application    OFFLINE   OFFLINE               ora....SM1.asm application    ONLINE    ONLINE    rac1        ora....C1.lsnr application    ONLINE    ONLINE    rac1        ora.rac1.gsd   application    ONLINE    ONLINE    rac1        ora.rac1.ons   application    ONLINE    ONLINE    rac1        ora.rac1.vip   application    ONLINE    ONLINE    rac1        ora....SM2.asm application    OFFLINE   OFFLINE               ora....C2.lsnr application    OFFLINE   OFFLINE               ora.rac2.gsd   application    OFFLINE   OFFLINE               ora.rac2.ons   application    OFFLINE   OFFLINE               ora.rac2.vip   application    OFFLINE   OFFLINE               [root@rac1 bin]# (这里因节点 3 已故障,只需确认服务已关闭即可)

2.2 删除目标节点database

这里我们使用图形化界面操作: 在第一节点 dbca cluster database -> instance management -> delete an instance -> 选择 RAC03 实例 -> perform another (N)!                                               

 

  

2.2 删除目标节点asm

[root@rac1 bin]# ./srvctl stop asm -n rac2[root@rac1 bin]# ./srvctl remove asm -n rac2[root@rac1 bin]# ./crs_stat -tName           Type           Target    State     Host       ------------------------------------------------------------ora.orcl.db    application    ONLINE    ONLINE    rac1       ora....l1.inst application    ONLINE    ONLINE    rac1       ora....SM1.asm application    ONLINE    ONLINE    rac1       ora....C1.lsnr application    ONLINE    ONLINE    rac1       ora.rac1.gsd   application    ONLINE    ONLINE    rac1       ora.rac1.ons   application    ONLINE    ONLINE    rac1       ora.rac1.vip   application    ONLINE    ONLINE    rac1       ora....C2.lsnr application    OFFLINE   OFFLINE              ora.rac2.gsd   application    OFFLINE   OFFLINE              ora.rac2.ons   application    OFFLINE   OFFLINE              ora.rac2.vip   application    OFFLINE   OFFLINE              [root@rac1 bin]#

2.3 删除目标节点监听

[oracle@rac1 ~]$ netca

 [oracle@rac2 ~]$ crs_stat -tName           Type           Target    State     Host       ------------------------------------------------------------ora.orcl.db    application    ONLINE    ONLINE    rac1       ora....l1.inst application    ONLINE    ONLINE    rac1       ora....SM1.asm application    ONLINE    ONLINE    rac1       ora....C1.lsnr application    ONLINE    ONLINE    rac1       ora.rac1.gsd   application    ONLINE    ONLINE    rac1       ora.rac1.ons   application    ONLINE    ONLINE    rac1       ora.rac1.vip   application    ONLINE    ONLINE    rac1       ora.rac2.gsd   application    OFFLINE   OFFLINE               ora.rac2.ons   application    OFFLINE   OFFLINE              ora.rac2.vip   application    OFFLINE   OFFLINE              [oracle@rac2 ~]$

2.4 删除目标节点

2.4.1 主节点更新oracle Inventory

 [oracle@rac1 ~]$ $ORACLE_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES=rac1" (填剩余节点host Starting Oracle Universal Installer... No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.'UpdateNodeList' was successful.

2.4.2 目标节点更新oracle Inventory

[oracle@rac2 ~]$ export DISPLAY=192.168.56.1:0[oracle@rac2 ~]$ $ORACLE_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES=rac2" -localStarting Oracle Universal Installer... No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.'UpdateNodeList' was successful.[oracle@rac2 ~]$  

2.4.3 目标节点删除数据库软件

[oracle@rac2 ~]$ $ORACLE_HOME/oui/bin/runInstaller -deinstall 出来 OUI 画面,选择删除软件,选择 oradb10g_home,REMOVE! 完成退出! 该服务器如果不准备再安装 ORACLE 数据库的话,可以同时删除 /etc/oratab 文件。  此处发现 2 节点的 database 目录也遭到了删除,尚不清楚原因,建议用 rm -rf 删除软件目录

2.4.4 删除目标节点ONS 配置及nodeapps

[root@rac1 bin]# ./racgons remove_config rac2:6200racgons: Existing key value on rac2 = 6200.racgons: rac2:6200 removed from OCR.[root@rac1 bin]# ./srvctl remove nodeapps -n rac2Please confirm that you intend to remove the node-level applications on node rac2 (y/[n]) y[root@rac1 bin]# ./crs_stat -tName           Type           Target    State     Host       ------------------------------------------------------------ora.orcl.db    application    ONLINE    ONLINE    rac1       ora....l1.inst application    ONLINE    ONLINE    rac1       ora....SM1.asm application    ONLINE    ONLINE    rac1       ora....C1.lsnr application    ONLINE    ONLINE    rac1       ora.rac1.gsd   application    ONLINE    ONLINE    rac1       ora.rac1.ons   application    ONLINE    ONLINE    rac1       ora.rac1.vip   application    ONLINE    ONLINE    rac1       [root@rac1 bin]# 

2.4.5 目标节点删除集群软件

首先仍是在任意保留的节点中操作:[oracle@rac1 ~]$ $CRS_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$CRS_HOME "CLUSTER_NODES=rac1" CRS=TRUE (剩余节点host Starting Oracle Universal Installer... No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.'UpdateNodeList' was successful. 再在目标节点运行:[oracle@rac3 dbs]$ $CRS_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$CRS_HOME "CLUSTER_NODES=rac3" CRS=TRUE -localStarting Oracle Universal Installer... No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.'UpdateNodeList' was successful.[oracle@rac2 ~]$  再运行 rundeinstall 弹出窗口,选中 crs 路径,然后点击 remove 即可。 操作完成后,点击 close 关闭窗口。集群件软件就被成功从目标节点删除了。接下来 愿意 ( 或者确实需要 ) ,可以考虑清除 ORACLE 留下的一些操作痕迹,包括但不限于下列 删除 $ORACLE_BASE/oraInventory 目录 删除 /etc/inittab 文件 删除 /var/tmp/.oracle 目录 删除 ORA 相关的启动关闭脚本,比如 /etc/init.d/init* ,以及 /etc/rc?.d/*init.crs 等文 删除 /etc/oracle 目录 清除 crontab 中关于 ORACLE 的相关任务; 清除 oracle 用户下 profile 中关于 ORA 的相关环境变量设置;  

2.4.6 ocr 删除节点信息

在任意一台保留的节点执行: [root@rac01 bin]# ./olsnodes -n -i rac01 1 rac01-vip rac02 2 rac02-vip rac03 3  尽管通过前面的操作, ORACLE 软件以及集群件均已被删除,节点信息也更新了,不过 OCR 中还是保留有 rac03 节点的信息,因此这块也需要删除,执行脚本如下 [root@rac01 install]# pwd /u01/crs/install [root@rac1 install]# ./rootdeletenode.sh rac2,2 CRS-0210: Could not find resource 'ora.rac2.LISTENER_RAC2.lsnr'. CRS-0210: Could not find resource 'ora.rac2.ons'. CRS-0210: Could not find resource 'ora.rac2.vip'. CRS-0210: Could not find resource 'ora.rac2.gsd'. CRS-0210: Could not find resource ora.rac2.vip. CRS nodeapps are deleted successfully clscfg: EXISTING configuration version 3 detected. clscfg: version 3 is 10G Release 2. CSS indicates failure 17 acknowledging the deletion. Attempting to roll back the deletion. Rollback of node deletion successful. Node deletion failed but configuration is intact. 'rac2,2' deleted successfully [root@rac1 bin]# ./olsnodes -n -i -prac1    1       rac1-priv       rac1-vip 

2.4.7 检查crs_stat -t -v

[root@rac1 bin]# ./crs_stat -t -vName           Type           R/RA   F/FT   Target    State     Host       ----------------------------------------------------------------------ora.orcl.db    application    0/1    0/1    ONLINE    ONLINE    rac1       ora....l1.inst application    0/5    0/0    ONLINE    ONLINE    rac1       ora....SM1.asm application    0/5    0/0    ONLINE    ONLINE    rac1       ora....C1.lsnr application    0/5    0/0    ONLINE    ONLINE    rac1       ora.rac1.gsd   application    0/5    0/0    ONLINE    ONLINE    rac1       ora.rac1.ons   application    0/3    0/0    ONLINE    ONLINE    rac1       ora.rac1.vip   application    0/0    0/0    ONLINE    ONLINE    rac1       [root@rac1 bin]#  检查redo 是否删干净,不然可能影响后续添加节点SQL> select * from v$logfile;     GROUP# STATUS         TYPE---------- -------------- --------------MEMBER--------------------------------------------------------------------------------IS_REC------         2                ONLINE+DATA/orcl/redo02.logNO          1                ONLINE+DATA/orcl/redo01.logNO     GROUP# STATUS         TYPE---------- -------------- --------------MEMBER--------------------------------------------------------------------------------IS_REC------  SQL> exitDisconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit ProductionWith the Partitioning, Real Application Clusters, OLAP and Data Mining options[oracle@rac1 ~]$ export ORACLE_SID=+ASM1[oracle@rac1 ~]$ asmcmdASMCMD> cd data/orclASMCMD> lsCONTROLFILE/DATAFILE/ONLINELOG/PARAMETERFILE/TEMPFILE/control01.ctlcontrol02.ctlcontrol03.ctlredo01.logredo02.logredo03.logredo04.logspfileorcl.orasysaux01.dbfsystem01.dbftemp01.dbfundotbs01.dbfusers01.dbfASMCMD> rm -f redo03.log redo04.logASMCMD>

. 添加新节点

 

3.1 预检查

检查新节点与原节点互信及/etc/hosts 文件是否配置好  

3.2 为新节点安装集群软件

在第一节点上进入 CRS_HOME/oui/bin ,运行脚本 addNode.sh [oracle@rac01 bin]$ export [oracle@rac01 bin]$ export DISPALY=192.168.56.1:0.0 [oracle@rac01 bin]$ ls addLangs.sh addNode.sh lsnodes ouica.sh resource runConfig.sh runInstaller runInstaller.sh [oracle@rac01 bin]$ ./addNode.sh 下一步,输入新节点的 IP ,进行安装!

[root@rac1 bin]# /oracle/product/crs/install/rootaddnode.shclscfg: EXISTING configuration version 3 detected.clscfg: version 3 is 10G Release 2.Attempting to add 1 new nodes to the configurationUsing ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.node <nodenumber>: <nodename> <private interconnect name> <hostname>node 2: rac3 rac3-priv rac3Creating OCR keys for user 'root', privgrp 'root'..Operation successful./oracle/product/crs/bin/srvctl add nodeapps -n rac3 -A rac3-vip/255.255.255.0/eth0 -o /oracle/product/crs[root@rac1 bin]#  此时crs_stat -t 如下:[root@rac1 bin]# ./olsnodes -n -i -prac1    1       rac1-priv       rac1-viprac3    2       rac3-priv       rac3-vip [root@rac1 bin]# ./crs_stat -tName           Type           Target    State     Host       ------------------------------------------------------------ora.orcl.db    application    ONLINE    ONLINE    rac1       ora....l1.inst application    ONLINE    ONLINE    rac1       ora....SM1.asm application    ONLINE    ONLINE    rac1       ora....C1.lsnr application    ONLINE    ONLINE    rac1       ora.rac1.gsd   application    ONLINE    ONLINE    rac1       ora.rac1.ons   application    ONLINE    UNKNOWN   rac1       ora.rac1.vip   application    ONLINE    ONLINE    rac1       ora.rac3.gsd   application    ONLINE    UNKNOWN   rac3       ora.rac3.ons   application    ONLINE    UNKNOWN   rac3       ora.rac3.vip   application    ONLINE    ONLINE    rac3       [root@rac1 bin]#   接下来需要将新节点的 ONS(Oracle Notification Services) 配置信息写入 OCR(Oracleter Register) ,在节点 1 执行脚本如下:[oracle@rac01 bin]$ pwd/u01/crs/bin[oracle@rac01 bin]$ ./racgons add_config rac03:6200 rac03 的端口号可以查询该结节中ons.config 文件中的配置,此处指定的端口号为remoteport [root@rac03 conf]# pwd/u01/crs/opmn/conf[root@rac03 conf]# more ons.config localport=6113 remoteport=6200 loglevel=3useocr=on 至此,新节点的 CLUSTERWARE 配置完成,要检查安装的结果,可以在新节点中调 cluvfy 命令进行验证,例如:[oracle@rac01 ~]$ /u01/crs/bin/cluvfy stage -post crsinst -n rac03 -verbose  

3.3 为新节点安装数据库软件

在第一节点 ORACLE_HOME/oui/bin 运行 addNode.sh

[oracle@rac1 database]$ cd oui/bin/

 [oracle@rac1 bin]$ pwd

/oracle/product/database/oui/bin

[oracle@rac1 bin]$ ./addNode.sh

Starting Oracle Universal Installer...

 

3.4 为新节点配置监听

在新节点运行 netca ,选出 cluster listener ,下一步选择新节点,开始配置,完成

 [oracle@rac1 bin]$ crs_stat -t

Name           Type           Target    State     Host       

------------------------------------------------------------

ora.orcl.db    application    ONLINE    ONLINE    rac1       

ora....l1.inst application    ONLINE    ONLINE    rac1       

ora....SM1.asm application    ONLINE    ONLINE    rac1       

ora....C1.lsnr application    ONLINE    ONLINE    rac1       

ora.rac1.gsd   application    ONLINE    ONLINE    rac1       

ora.rac1.ons   application    ONLINE    UNKNOWN   rac1       

ora.rac1.vip   application    ONLINE    ONLINE    rac1       

ora....C3.lsnr application    ONLINE    ONLINE    rac3       

ora.rac3.gsd   application    ONLINE    UNKNOWN   rac3       

ora.rac3.ons   application    ONLINE    UNKNOWN   rac3       

ora.rac3.vip   application    ONLINE    ONLINE    rac3      

3.5 为新节点创建实例

[oracle@rac1 bin]$ dbca

cluster database -> instance management ->add an instance 

-> 输入sys ,密码 -> 选择添加实例的节点名(RAC3) 实例名orcl3 

-> 开始创建新实例。期间提示是否创建ASM 相关实例,如果是ASM 环境则点是。最后点NO 不进行其他操作,完成安装

   

 

                                         

相关推荐