本文共 8986 字,大约阅读时间需要 29 分钟。
系统环境:
操作系统: AIX 5300-08
集群软件: CRS 10.2.0.1
数据库: Oracle 10.2.0.1
一、故障现象
在安装CRS后,安装Oracle软件时失败,重新安装,删除了/u01/app/oracle下所有的目录,导致Oracle再次安装时不能识别集群环境。
查看Oracle软件安装索引目录:/u01/app/oracle/oraInventory,已经非CRS的集群环境了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | [root@aix227:/u01/app/oracle/oraInventory/ContentsXML]#vi inventory.xml "inventory.xml" 12 lines, 409 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. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH>10.2.0.1.0</SAVED_WITH> <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME= "OUIHome1" LOC= "/u01/app/oracle/product/10.2.0/db_1" TYPE= "O" IDX= "1" /> </HOME_LIST> </INVENTORY> |
正常的安装索引目录应该是:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | [root@aix211 app]#cd oracle/ [root@aix211 oracle]#ls admin oraInventory oradata product [root@aix211 oracle]#cd oraInventory/ [root@aix211 oraInventory]#ls Contents logs orainstRoot.sh ContentsXML oraInst.loc oui install.platform oraInstaller.properties sessionContext.ser [root@aix211 oraInventory]#cd ContentsXML/ [root@aix211 ContentsXML]#ls comps.xml inventory.xml libs.xml [root@aix211 ContentsXML]#more inventory.xml <?xml version= "1.0" standalone= "yes" ?> <!-- Copyright (c) 2005 Oracle Corporation. All rights Reserved --> <!-- Do not modify the contents of this file by hand. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH>10.2.0.1.0</SAVED_WITH> <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME= "OUIHome1" LOC= "/u01/crs_1" TYPE= "O" IDX= "1" CRS= "true" > <NODE_LIST> <NODE NAME= "aix211" /> <NODE NAME= "aix212" /> </NODE_LIST> </HOME> <HOME NAME= "OUIHome2" LOC= "/u01/app/oracle/product/10.2.0/db_1" TYPE= "O" IDX= "2" > <NODE_LIST> <NODE NAME= "aix211" /> <NODE NAME= "aix212" /> </NODE_LIST> </HOME> </HOME_LIST> </INVENTORY> |
二、解决方法
在一个安装好CRS软件的主机上(aix211),将aix211主机的 inventory.xml文件上传到aix211主机,替代原来的inventory.xml文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | 1 、通过ftp上传: [root@aix 211 ContentsXML]#pwd /u 01 /app/oracle/oraInventory/ContentsXML [root@aix 211 ContentsXML]#ls comps.xml inventory.xml libs.xml [root@aix 211 ContentsXML]#ftp 192.168 . 8.227 Connected to 192.168 . 8.227 . 220 aix 227 FTP server (Version 4.2 Sat Sep 8 09: 49: 58 CDT 2007 ) ready. Name ( 192.168 . 8.227: root): ^C[root@aix 211 ContentsXML]# [root@aix 211 ContentsXML]# [root@aix 211 ContentsXML]#su - oracle [YOU HAVE NEW MAIL] [u@h W]$bash [oracle@aix 211 ~]$cd /u 01 /app/oracle/oraInventory/ [oracle@aix 211 oraInventory]$ls Contents logs orainstRoot.sh ContentsXML oraInst.loc oui install.platform oraInstaller.properties sessionContext.ser [oracle@aix 211 oraInventory]$cd ContentsXML/ [oracle@aix 211 ContentsXML]$ls comps.xml inventory.xml libs.xml [oracle@aix 211 ContentsXML]$pwd /u 01 /app/oracle/oraInventory/ContentsXML [oracle@aix 211 ContentsXML]$ftp 192.168 . 8.227 Connected to 192.168 . 8.227 . 220 aix 227 FTP server (Version 4.2 Sat Sep 8 09: 49: 58 CDT 2007 ) ready. Name ( 192.168 . 8.227: root): oracle 331 Password required for oracle. Password: 230 -Last login: Mon Nov 17 10: 36: 38 2014 on /dev/pts/ 2 from 192.168 . 8.248 230 User oracle logged in. ftp> bin 200 Type set to I. ftp> put inventory.xml 200 PORT command successful. 150 Opening data connection for inventory.xml. 226 Transfer complete. 666 bytes sent in 0.001007 seconds ( 645.9 Kbytes/s) local: inventory.xml remote: inventory.xml ftp> 覆盖以前的inventory.xml: [oracle@aix 227: /home/oracle]$ls -l total 8 -rw-r----- 1 oracle oinstall 666 Nov 17 10: 45 inventory.xml [oracle@aix 227: /home/oracle]$cp inventory.xml /u 01 /app/oracle/oraInventory/ContentsXML [oracle@aix 227: /home/oracle]$cd /u 01 /app/oracle/oraInventory/ContentsXML [oracle@aix 227: /u 01 /app/oracle/oraInventory/ContentsXML]$ls comps.xml inventory.xml libs.xml [oracle@aix 227: /u 01 /app/oracle/oraInventory/ContentsXML]$more inventory.xml <?xml version= "1.0" standalone= "yes" ?> <!-- Copyright (c) 2005 Oracle Corporation. All rights Reserved --> <!-- Do not modify the contents of this file by hand. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH> 10.2 . 0.1 . 0 </SAVED_WITH> <MINIMUM_VER> 2.1 . 0.6 . 0 </MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME= "OUIHome1" LOC= "/u01/crs_1" TYPE= "O" IDX= "1" CRS= "true" > <NODE_LIST> <NODE NAME= "aix211" /> <NODE NAME= "aix212" /> </NODE_LIST> </HOME> <HOME NAME= "OUIHome2" LOC= "/u01/app/oracle/product/10.2.0/db_1" TYPE= "O" IDX= "2" > <NODE_LIST> <NODE NAME= "aix211" /> <NODE NAME= "aix212" /> </NODE_LIST> </HOME> </HOME_LIST> </INVENTORY> |
更新inventory.xml 中node的信息(将aix211,aix212更新为aix227,aix228):
《注意更新命令在图形界面下执行》
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | 执行更新命令: [oracle@aix 227: /u 01 /database/Disk 1 ]$/u 01 /crs_ 1 /oui/bin/runInstaller -updateNOdeList CLUSTER_NODES= 'aix227,aix228' ORACLE_HOME= '/u01/crs_1' Starting Oracle Universal Installer... No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed. 'UpdateNodeList' was successful. 更新成功: [oracle@aix 227: /u 01 /app/oracle/oraInventory/ContentsXML]$more inventory.xml <?xml version= "1.0" standalone= "yes" ?> <!-- Copyright (c) 2005 Oracle Corporation. All rights Reserved --> <!-- Do not modify the contents of this file by hand. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH> 10.2 . 0.1 . 0 </SAVED_WITH> <MINIMUM_VER> 2.1 . 0.6 . 0 </MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME= "OUIHome1" LOC= "/u01/crs_1" TYPE= "O" IDX= "1" CRS= "true" > <NODE_LIST> <NODE NAME= "aix227" /> <NODE NAME= "aix228" /> </NODE_LIST> </HOME> <HOME NAME= "OUIHome2" LOC= "/u01/app/oracle/product/10.2.0/db_1" TYPE= "O" IDX= "2" > <NODE_LIST> <NODE NAME= "aix211" /> <NODE NAME= "aix212" /> </NODE_LIST> </HOME> </HOME_LIST> </INVENTORY> [oracle@aix 227: /u 01 /database/Disk 1 ]$/u 01 /crs_ 1 /oui/bin/runInstaller -updateNOdeList CLUSTER_NODES= 'aix227,aix228' ORACLE_HOME= '/u01/app/oracle/product/10.2.0/db_1' Starting Oracle Universal Installer... No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed. 'UpdateNodeList' was successful. [oracle@aix 227: /u 01 /app/oracle/oraInventory/ContentsXML]$more inventory.xml <?xml version= "1.0" standalone= "yes" ?> <!-- Copyright (c) 2005 Oracle Corporation. All rights Reserved --> <!-- Do not modify the contents of this file by hand. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH> 10.2 . 0.1 . 0 </SAVED_WITH> <MINIMUM_VER> 2.1 . 0.6 . 0 </MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME= "OUIHome1" LOC= "/u01/crs_1" TYPE= "O" IDX= "1" CRS= "true" > <NODE_LIST> <NODE NAME= "aix227" /> <NODE NAME= "aix228" /> </NODE_LIST> </HOME> <HOME NAME= "OUIHome2" LOC= "/u01/app/oracle/product/10.2.0/db_1" TYPE= "O" IDX= "2" > <NODE_LIST> <NODE NAME= "aix227" /> <NODE NAME= "aix228" /> </NODE_LIST> </HOME> </HOME_LIST> </INVENTORY> |
更新错误信息:
三、重新安装Oracle软件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | [oracle@aix227:/u01/database/Disk1/rootpre]$su - root's Password: readline: warning: turning on OPOST for terminal readline: warning: turning on OPOST for terminal [root@aix227:/]#cd /u01/database/Disk1/rootpre/ [root@aix227:/u01/database/Disk1/rootpre]#./rootpre.sh ./rootpre.sh output will be logged in /tmp/rootpre.out_14 -11 -17.10 : 58 : 29 Kernel extension /etc/pw-syscall.64bit_kernel is loaded. Unloading the existing extension: /etc/pw-syscall.64bit_kernel.... Oracle Kernel Extension Loader for AIX Copyright (c) 1998 , 1999 Oracle Corporation Unconfigured the kernel extension successfully Unloaded the kernel extension successfully Saving the original files in /etc/ora_save_14 -11 -17.10 : 58 : 29. ... Copying new kernel extension to /etc.... Loading the kernel extension from /etc Oracle Kernel Extension Loader for AIX Copyright (c) 1998 , 1999 Oracle Corporation Successfully loaded /etc/pw-syscall.64bit_kernel with kmid: 0x41f8b00 Successfully configured /etc/pw-syscall.64bit_kernel with kmid: 0x41f8b00 The kernel extension was successfuly loaded. Configuring Asynchronous I/O.... Asynchronous I/O is already defined Configuring POSIX Asynchronous I/O.... Posix Asynchronous I/O is already defined Checking if group services should be configured.... Please confirm your Oracle userid is a member of the group: hagsuser Configuring HACMP group services socket for possible use by Oracle. cp: /opt/ORCLcluster/lib/libskgxnr.a: Text file busy cp: /opt/ORCLcluster/lib/libskgxnr.so: Text file busy cp: /opt/ORCLcluster/lib32/libskgxnr.so: Text file busy |
@至此,已经能正常识别为集群环境