今天去做了个删节点的工作,遇到了2个怪问题,记录一下
1.在删除DBHOME时,在被删除的节点上运行runInstaller报OUI-25023
[oracle@racdb2:/oracle/app/oracle/product/10.2/db_1/oui/bin]$ ./runInstaller -updateNodeList ORACLE_HOME=/oracle/app/oracle/product/10.2/db_1 "CLUSTER_NODES={racdb2}" -local
Starting Oracle Universal Installer...
No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /oracle/oraInventory
'UpdateNodeList' failed.
-- 查看日志如下:
INFO: Setting variable 'LOCAL_NODE' to 'racdb1'. Received the value from a code block.
SEVERE: OUI-25023: The local node is not selected for installing this product. Include the local node in the cluster list or perform the installation on the nodes on which the install is to be performed.
INFO: Ending the inventory Session
INFO: Disposing the install area control objects
INFO: 'UpdateNodeList' failed.
-- 使用truss跟踪,发现读取了$ORACLE_HOME/inventory/ContentsXML下的oraclehomeproperties.xml文件
-- 被删除的节点名为racdb2,而这个文件中,LOCAL_NODE的名称为racdb1
-- 将其修正后,运行OK
[oracle@racdb2:/oracle/app/oracle/product/10.2/db_1/inventory/ContentsXML]$ cat oraclehomeproperties.xml
"oraclehomeproperties.xml" 18 lines, 551 characters
<?xml version="1.0" standalone="yes" ?>
<!-- Copyright (c) 2005 Oracle Corporation. All rights Reserved -->
<!-- Do not modify the contents of this file by hand. -->
1600341612.1342594361
212
IBM_AIX
2.在删除CRSHOME时,在被删除的节点上运行rootdelete.sh时,报告“The database instance is still configured on this node”
[racdb2:root:/oracle/app/oracle/product/crs/install] ./rootdelete.sh
racdb
racdb2
NAME=ora.racdb.racdb2.inst
TYPE=application
TARGET=ONLINE
STATE=ONLINE on racdb1
The database instance is still configured on this node. Delete the database instance using DBCA before preparing to deconfigure CRS stack on this node.
1
-- 被想用解决问题1个办法节点问题2,无效。没有发现这个命令读取了什么配置文件
-- 检查 rootdelete.sh 脚本,发现这一行开始有问题
INSTS=`$ORA_CRS_HOME/bin/srvctl config database -d $i | grep $NODE_NAME | $AWK '{ print $2 }'`
-- 该数据库名称为racdb
-- 节点1的名称为racdb1,上面运行的实例名确为racdb2
-- 节点2的名称为racdb2,上面运行的实例名确为racdb1
-- 导致该行无论如何都有返回值。将该行修正为:
INSTS=`$ORA_CRS_HOME/bin/srvctl config database -d $i |$AWK '{ print $1 }'| grep $NODE_NAME`
-- 顺利完成节点删除工作
1.在删除DBHOME时,在被删除的节点上运行runInstaller报OUI-25023
[oracle@racdb2:/oracle/app/oracle/product/10.2/db_1/oui/bin]$ ./runInstaller -updateNodeList ORACLE_HOME=/oracle/app/oracle/product/10.2/db_1 "CLUSTER_NODES={racdb2}" -local
Starting Oracle Universal Installer...
No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.
The inventory pointer is located at /etc/oraInst.loc
The inventory is located at /oracle/oraInventory
'UpdateNodeList' failed.
-- 查看日志如下:
INFO: Setting variable 'LOCAL_NODE' to 'racdb1'. Received the value from a code block.
SEVERE: OUI-25023: The local node is not selected for installing this product. Include the local node in the cluster list or perform the installation on the nodes on which the install is to be performed.
INFO: Ending the inventory Session
INFO: Disposing the install area control objects
INFO: 'UpdateNodeList' failed.
-- 使用truss跟踪,发现读取了$ORACLE_HOME/inventory/ContentsXML下的oraclehomeproperties.xml文件
-- 被删除的节点名为racdb2,而这个文件中,LOCAL_NODE的名称为racdb1
-- 将其修正后,运行OK
[oracle@racdb2:/oracle/app/oracle/product/10.2/db_1/inventory/ContentsXML]$ cat oraclehomeproperties.xml
"oraclehomeproperties.xml" 18 lines, 551 characters
<?xml version="1.0" standalone="yes" ?>
<!-- Copyright (c) 2005 Oracle Corporation. All rights Reserved -->
<!-- Do not modify the contents of this file by hand. -->
1600341612.1342594361
212
IBM_AIX
2.在删除CRSHOME时,在被删除的节点上运行rootdelete.sh时,报告“The database instance is still configured on this node”
[racdb2:root:/oracle/app/oracle/product/crs/install] ./rootdelete.sh
racdb
racdb2
NAME=ora.racdb.racdb2.inst
TYPE=application
TARGET=ONLINE
STATE=ONLINE on racdb1
The database instance is still configured on this node. Delete the database instance using DBCA before preparing to deconfigure CRS stack on this node.
1
-- 被想用解决问题1个办法节点问题2,无效。没有发现这个命令读取了什么配置文件
-- 检查 rootdelete.sh 脚本,发现这一行开始有问题
INSTS=`$ORA_CRS_HOME/bin/srvctl config database -d $i | grep $NODE_NAME | $AWK '{ print $2 }'`
-- 该数据库名称为racdb
-- 节点1的名称为racdb1,上面运行的实例名确为racdb2
-- 节点2的名称为racdb2,上面运行的实例名确为racdb1
-- 导致该行无论如何都有返回值。将该行修正为:
INSTS=`$ORA_CRS_HOME/bin/srvctl config database -d $i |$AWK '{ print $1 }'| grep $NODE_NAME`
-- 顺利完成节点删除工作
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8242091/viewspace-777034/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8242091/viewspace-777034/