原创文章,转载请标明出处
http://space.itpub.net/26239116/viewspace-749136
1 从节点上删除实例
dbca -silent -deleteInstance [-nodeList node] -gdbName gdbname -instanceName instname -sysDBAUserName sysdba -sysDBAPassword password
如果要删除的节点不是运行dbca的节点,则只需要提供node name就行了。
这条命令做了下面几件事:
取消该实例的监听注册。
从节点上删除实例。
删除oracle net配置。
删除该实例的部分目录结构。
2 删除asm实例
关闭所有使用这个asm实例的数据库。
停止asm实例
srvctl stop asm -n node_name
删除asm实例
srvctl remove asm -n node
删除文件
rm -r $ORACLE_BASE/admin/+ASMnode_number
rm -f $ORACLE_HOME/dbs/*ASMnode_number
3 从集群中删除节点
删除节点之前,首先需要确定存在的节点的$CRS_HOME和$ORACLE_HOME正确设置。
更新节点信息
如果oracle_home不是共享目录,在每个要删除的节点执行
runInstaller -updateNodeList ORACLE_HOME=Oracle_home CLUSTER_NODES="" –local (可以加-silent,静默执行)
注意CLUSTER_NODES后面的引号要空着。
如果要保留的节点的oracle_home是非共享的,在保留节点上执行
runInstaller -updateNodeList ORACLE_HOME=Oracle_home "CLUSTER_NODES={node_list}"
node_list是逗号隔开的。
如果要保留的节点的oracle_home是共享的,
runInstaller -updateNodeList -noClusterEnabled ORACLE_HOME=Oracle_home "CLUSTER_NODES={node_list}"
node_list是逗号隔开的。
删除节点端口配置,在保留节点上执行:
racgons remove_config nodename:remote_port
oifcfg delif -node nodename
具体的端口号可以在删除节点的${ORA_CRS_HOME}/opmn/conf/ons.config中查看
在要删除的节点上用root执行CRS_home/install/rootdelete.sh,来禁用节点上的clusterware。
如果ocr.loc在共享目录下,执行
CRS_home/install/rootdelete.sh remote sharedvar
如果ocr.loc不在共享目录下,执行
CRS_home/install/rootdelete.sh remote nosharedvar
更新OCR,在每个保留的节点上执行CRS_home/install/rootdeletenode.sh node1,node1-number,node2,node2-number,... nodeN,nodeN-number
CRS_home/install/rootdeletenode.sh racnode01, racnode01-1
dbca -silent -deleteInstance [-nodeList node] -gdbName gdbname -instanceName instname -sysDBAUserName sysdba -sysDBAPassword password
如果要删除的节点不是运行dbca的节点,则只需要提供node name就行了。
这条命令做了下面几件事:
取消该实例的监听注册。
从节点上删除实例。
删除oracle net配置。
删除该实例的部分目录结构。
2 删除asm实例
关闭所有使用这个asm实例的数据库。
停止asm实例
srvctl stop asm -n node_name
删除asm实例
srvctl remove asm -n node
删除文件
rm -r $ORACLE_BASE/admin/+ASMnode_number
rm -f $ORACLE_HOME/dbs/*ASMnode_number
3 从集群中删除节点
删除节点之前,首先需要确定存在的节点的$CRS_HOME和$ORACLE_HOME正确设置。
更新节点信息
如果oracle_home不是共享目录,在每个要删除的节点执行
runInstaller -updateNodeList ORACLE_HOME=Oracle_home CLUSTER_NODES="" –local (可以加-silent,静默执行)
注意CLUSTER_NODES后面的引号要空着。
如果要保留的节点的oracle_home是非共享的,在保留节点上执行
runInstaller -updateNodeList ORACLE_HOME=Oracle_home "CLUSTER_NODES={node_list}"
node_list是逗号隔开的。
如果要保留的节点的oracle_home是共享的,
runInstaller -updateNodeList -noClusterEnabled ORACLE_HOME=Oracle_home "CLUSTER_NODES={node_list}"
node_list是逗号隔开的。
删除节点端口配置,在保留节点上执行:
racgons remove_config nodename:remote_port
oifcfg delif -node nodename
具体的端口号可以在删除节点的${ORA_CRS_HOME}/opmn/conf/ons.config中查看
在要删除的节点上用root执行CRS_home/install/rootdelete.sh,来禁用节点上的clusterware。
如果ocr.loc在共享目录下,执行
CRS_home/install/rootdelete.sh remote sharedvar
如果ocr.loc不在共享目录下,执行
CRS_home/install/rootdelete.sh remote nosharedvar
更新OCR,在每个保留的节点上执行CRS_home/install/rootdeletenode.sh node1,node1-number,node2,node2-number,... nodeN,nodeN-number
CRS_home/install/rootdeletenode.sh racnode01, racnode01-1
如:rootdeletenode.sh rac3,3
其中node number可以通过CRS_home/bin/olsnodes -n获得。
最后再更新一下节点,这次是crs_home,和上面更新节点类似,分ORACLE_HOME共享和非共享两种
runInstaller -updateNodeList ORACLE_HOME=CRS_home "CLUSTER_NODES={nodelist}"
在每个节点上执行
cluvfy comp crs -n all -verbose
验证删除节点的效果。
其中node number可以通过CRS_home/bin/olsnodes -n获得。
最后再更新一下节点,这次是crs_home,和上面更新节点类似,分ORACLE_HOME共享和非共享两种
runInstaller -updateNodeList ORACLE_HOME=CRS_home "CLUSTER_NODES={nodelist}"
在每个节点上执行
cluvfy comp crs -n all -verbose
验证删除节点的效果。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26239116/viewspace-749141/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26239116/viewspace-749141/