我们在使用opatch数据库补丁管理工具时可能碰到这样那样的问题,那么opatch工具是否存在一些调试选项以便我们了解更多的信息呢?同OUI工具一样,opatch存在一个debug选项,使用该选项我们仅需要设置OPATCH_DEBUG环境变量为TRUE就可以了,如:
[oracle@rh2 OPatch]$ export OPATCH_DEBUG=TRUE[oracle@rh2 OPatch]$ ./opatch lsinventoryORACLE_HOME is set at OPatch invocationMachine Info: Linux rh2.oracle.com 2.6.32-100.0.19.el5 #1SMP Fri Sep 17 17:51:41 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux_osArch is i386_javaVMSpecVersion is 1.0_javaVMSpecVendor is Sun Microsystems Inc._javaVMSpecName is Java Virtual Machine Specification_javaVMVendor is Sun Microsystems Inc._javaJRESpecVersion is 1.4_javaJRESpecVendor is Sun Microsystems Inc._javaJRESpecName is Java Platform API Specification_javaSupportedClassVersion is 48.0OPatch compiled with major version: 0, minor version: 0_osArch (from OCM API) is i386/s01/db_1/jdk/bin/java -mx96m -cp ./ocm/lib/emocmutl.jar:./ocm/lib/emocmclnt.jar:/s01/db_1/oui/jlib/OraInstaller.jar:/s01/db_1/oui/jlib/OraPrereq.jar:/s01/db_1/oui/jlib/share.jar:/s01/db_1/oui/jlib/srvm.jar:/s01/db_1/oui/jlib/orai18n-mapping.jar:/s01/db_1/oui/jlib/xmlparserv2.jar:./jlib/opatch.jar:./jlib/opatchutil.jar:./jlib/opatchprereq.jar:./jlib/opatchactions.jar:./jlib/opatchext.jar:./jlib/opatchfmw.jar: -DOPatch.ORACLE_HOME=/s01/db_1 -DOPatch.DEBUG=true-DOPatch.RUNNING_DIR=. -DOPatch.MW_HOME= -DOPatch.WL_HOME=-DOPatch.COMMON_COMPONENTS_HOME= oracle/opatch/OPatch lsinventory/* 以上debug信息可以说明opatch工具需要用到Oracle软件自带的JRE */Invoking OPatch 11.2.0.1.3Oracle Interim Patch Installer version 11.2.0.1.3Copyright (c) 2010, Oracle Corporation. All rights reserved.OPatchSession::parse() on "lsinventory",Argument is "lsinventory" Add commands for Help add command "apply" add command "napply" add command "rollback" add command "nrollback" add command "lsinventory" add command "lsinv" add command "query" add command "util" add command "prereq" add command "version" add command "-help" add command "-help -fmw" Add supported commands for validation add command "apply" add command "rollback" add command "lsinv" add command "lsinventory" add command "query" add command "util" add command "prereq" add command "version" add command "napply" add command "nrollback" add command "-fmw" Not a command that can be mapped to Util Session.CmdLineParser::initRuntimeOptions() Checking on class oracle.opatch.opatchutil.CmdLineOptions$StringArguments Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$StringArguments There are 7 fields defined in this class. adding option "fp" adding option "dp" adding option "fr" adding option "dr" adding option "mp" adding option "phbasedir" adding option "phbasefile" Checking on class oracle.opatch.opatchutil.CmdLineOptions$BooleanArguments Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$BooleanArguments There are 2 fields defined in this class. adding option "delay_link" adding option "cmd_end" Checking on class oracle.opatch.opatchutil.CmdLineOptions$IntegerArguments Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$IntegerArguments There are 2 fields defined in this class. adding option "integerarg1" adding option "integerarg2" Checking on class oracle.opatch.opatchutil.CmdLineOptions$StringtegerArguments Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$StringtegerArguments There are 5 fields defined in this class. adding option "stringtegerarg1" adding option "stringtegerarg2" adding option "ps" adding option "mp" adding option "xmlinput" Checking on class oracle.opatch.opatchutil.CmdLineOptions$DoubleArguments Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$DoubleArguments There are 2 fields defined in this class. adding option "doublearg1" adding option "doublearg2" Checking on class oracle.opatch.opatchutil.CmdLineOptions$RawStringArguments Get list of fields defined in the class oracle.opatch.opatchutil.CmdLineOptions$RawStringArguments There are 1 fields defined in this class. adding option "cmd"CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchutil.OUSession" initializing String option 0, fp initializing String option 1, dp initializing String option 2, fr initializing String option 3, dr initializing String option 4, mp initializing String option 5, phbasedir initializing String option 6, phbasefile done init. String arg. initializing Boolean option 0, delay_link initializing Boolean option 1, cmd_end done init. Boolean arg. initializing Integer option 0, integerarg1 initializing Integer option 1, integerarg2 done init. Integer arg. initializing StringTeger option 0, stringtegerarg1 initializing StringTeger option 1, stringtegerarg2 initializing StringTeger option 2, ps initializing StringTeger option 3, mp initializing StringTeger option 4, xmlinput done init. SringTeger arg. initializing Double option 0, doublearg1 initializing Double option 1, doublearg2 done init. Double arg. initializing RawString option 0, cmd done init. RawString arg.CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchutil.OUSession", done.CmdLineParser::initRuntimeOptions() Checking on class oracle.opatch.opatchprereq.CmdLineOptions$StringArguments Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$StringArguments There are 3 fields defined in this class. adding option "phbasedir" adding option "patchids" adding option "phbasefile" Checking on class oracle.opatch.opatchprereq.CmdLineOptions$BooleanArguments Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$BooleanArguments There are 2 fields defined in this class. adding option "booleanarg1" adding option "booleanarg2" Checking on class oracle.opatch.opatchprereq.CmdLineOptions$IntegerArguments Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$IntegerArguments There are 2 fields defined in this class. adding option "integerarg1" adding option "integerarg2" Checking on class oracle.opatch.opatchprereq.CmdLineOptions$StringtegerArguments Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$StringtegerArguments There are 2 fields defined in this class. adding option "stringtegerarg1" adding option "stringtegerarg2" Checking on class oracle.opatch.opatchprereq.CmdLineOptions$DoubleArguments Get list of fields defined in the class oracle.opatch.opatchprereq.CmdLineOptions$DoubleArguments There are 2 fields defined in this class. adding option "doublearg1" adding option "doublearg2"CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchprereq.PQSession" initializing String option 0, phbasedir initializing String option 1, patchids initializing String option 2, phbasefile done init. String arg. initializing Boolean option 0, booleanarg1 initializing Boolean option 1, booleanarg2 done init. Boolean arg. initializing Integer option 0, integerarg1 initializing Integer option 1, integerarg2 done init. Integer arg. initializing StringTeger option 0, stringtegerarg1 initializing StringTeger option 1, stringtegerarg2 done init. SringTeger arg. initializing Double option 0, doublearg1 initializing Double option 1, doublearg2 done init. Double arg.CmdLineHelper::loadRuntimeOption() for Class "oracle.opatch.opatchprereq.PQSession", done. reqVer For using getEnv() = 10.2.0.4.0 curVer = 10.2.0.4.0 Current Ver later than required? :false Current Ver equals required? :trueChecking EMDROOT using OUI's API...CmdLineParser.processOPatchProperties() beginsCmdLineParser.processOPatchProperties() endsOUIReplacer::runEnvScript() calledSystemCall:RuntimeExec(cmds, runDir): GOING to start thread to read Input StreamSystemCall:RuntimeExec(cmds, runDir): Started thread to read Input StreamSystemCall:RuntimeExec(cmds, runDir): GOING to start thread to read Error StreamReaderThread::run(): Stream InputStream about to be readSystemCall:RuntimeExec(cmds, runDir): Started thread to read Error StreamSystemCall:RuntimeExec(cmds, runDir): GOING into process.waitFor()ReaderThread::run(): Stream ErrorStream about to be readReaderThread::run(): Stream ErrorStream reading completedReaderThread::run(): Stream InputStream reading completedSystemCall:RuntimeExec(cmds, runDir): process.waitFor() is OVERSystemCall:RuntimeExec(cmds, runDir): Error stream thread joined successfullySystemCall:RuntimeExec(cmds, runDir): Input stream thread joined successfullyOUIReplacer::setKeyValue() calledOPatchSession::main()Environment: OPatch.ORACLE_HOME=/s01/db_1 oracle.installer.invPtrLoc=/etc/oraInst.loc oracle.installer.oui_loc=/s01/db_1/oui oracle.installer.library_loc=/s01/db_1/oui/lib/linux oracle.installer.startup_location=/s01/db_1/oui OPatch.PLATFORM_ID= os.name=Linux OPatch.NO_FUSER= OPatch.SKIP_VERIFY=null OPatch.SKIP_VERIFY_SPACE=null oracle.installer.clusterEnabled=false TRACING.ENABLED=TRUE TRACING.LEVEL=2 OPatch.DEBUG=true OPATCH_VERSION=11.2.0.1.3 Bundled OPatch Property File=properties Minimum OUI version: 10.2 OPatch.PATH=/s01/db_1/bin:/bin:/usr/bin:/sbin:/usr/sbinStand-Alone home : false OPatch.MW_HOME= OPatch.WL_HOME= OPatch.COMMON_COMPONENTS_HOME=Environment: OPatch.ORACLE_HOME=/s01/db_1 oracle.installer.invPtrLoc=/etc/oraInst.loc oracle.installer.oui_loc=/s01/db_1/oui oracle.installer.library_loc=/s01/db_1/oui/lib/linux oracle.installer.startup_location=/s01/db_1/oui OPatch.PLATFORM_ID= os.name=Linux OPatch.NO_FUSER= OPatch.SKIP_VERIFY=null OPatch.SKIP_VERIFY_SPACE=null oracle.installer.clusterEnabled=false TRACING.ENABLED=TRUE TRACING.LEVEL=2 OPatch.DEBUG=true OPATCH_VERSION=11.2.0.1.3 Bundled OPatch Property File=properties Minimum OUI version: 10.2 OPatch.PATH=/s01/db_1/bin:/bin:/usr/bin:/sbin:/usr/sbinStand-Alone home : false OPatch.MW_HOME= OPatch.WL_HOME= OPatch.COMMON_COMPONENTS_HOME=Oracle Home : /s01/db_1Central Inventory : /s01/oraInventory from : /etc/oraInst.locOPatch version : 11.2.0.1.3OUI version : 10.2.0.4.0OUI location : /s01/db_1/ouiLog file location : /s01/db_1/cfgtoollogs/opatch/opatch2011-05-06_23-38-48PM.logPatch history file: /s01/db_1/cfgtoollogs/opatch/opatch_history.txtOUISessionManager::instantiate()lockCentralInventory(): OUISessionManager::lockCentralInventory() will retry 0 times with 120-second interval to get an Inventory lock.OUISessionManager::lockCentralInventory() try round # 1OUISessionManager::setupSession()OUISessionManager::setupSession() instantiates a OUIInventorySession obj.OUISessionManager::setupSession() init. the sessionOUISessionManager::setupSession() sets up READ-ONLY sessionOUISessionManager::setupSession() doneOUISessionManager::lockCentralInventory() set up session OK reqVer = 10.2 curVer = 10.2.0.4.0 Current Ver later than required? :true Current Ver equals required? :falseOracleHomeInventory::createInventoryObj()OracleHomeInventory::createInventoryObj() gets OUIInventorySession objectLocker::lock() calling lockCentralInventory()OUISessionManager::getInventorySession()Caller Details: Caller Name : OPatch Caller Version : 11.2.0.1.3 Requested Read-only access : true Oracle Home : /s01/db_1OUISessionManager::register()Registering the caller : OPatchOracleHomeInventory::createInventoryObj() gets OUIInstallAreaControl objectOracleHomeInventory::createInventoryObj() gets OUIInstallInventory objectOracleHomeInventory::createInventoryObj() gets OUIOracleHomeInfo objectOracleHomeInventory::createInventoryObj() construction doneLsInventory::loadAndPrintInventory()Retrieving inventory from Oracle Home...OracleHomeInventory::load()OracleHomeInventory::load() gets a Vector of all product entriesOracleHomeInventory::load() gets a Vector of all one-off entriesOracleHomeInventory::load() begins to process raw data from OUI to build up OPatch primitive classesPatchObject(oracleHomePath,patchID)PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/actions.xmlPatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/9352164/etc/config/inventory.xmlPatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/9352164/etc/config/deploy.xmlPatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/9352164/etc/config/sequence.xmlPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/deploy.xml does not existPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/deploy.xml unreadablePatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/9352164/etc/config/sequence.xml does not exist or is not readablePatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9352164/etc/config/sequence.xml unreadableparserXMLFile : startparserXMLFile : startJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/qsma.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/qsma.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/qsma.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/rdbms/jlib/CDC.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emDB.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jarJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::processJarActionPaths()JarAction::processJarActionPaths(): return true for successful parsing Jar pathJarAction::getCompleteFileListPath() returns :ORACLE_HOME/sysman/jlib/emjsp.jarPatchObject(oracleHomePath,patchID)PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/actions.xmlPatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/9654991/etc/config/inventory.xmlPatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/9654991/etc/config/deploy.xmlPatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/9654991/etc/config/sequence.xmlPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/deploy.xml does not existPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/deploy.xml unreadablePatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/9654991/etc/config/sequence.xml does not exist or is not readablePatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9654991/etc/config/sequence.xml unreadableparserXMLFile : startparserXMLFile : startPatchObject(oracleHomePath,patchID)PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/actions.xmlPatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/7527908/etc/config/inventory.xmlPatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/7527908/etc/config/deploy.xmlPatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/7527908/etc/config/sequence.xmlPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/deploy.xml does not existPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/deploy.xml unreadablePatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/7527908/etc/config/sequence.xml does not exist or is not readablePatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/7527908/etc/config/sequence.xml unreadableparserXMLFile : startparserXMLFile : startPatchObject(oracleHomePath,patchID)PatchObject::PatchObject looks for the actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/actions.xmlPatchObject::PatchObject looks for the inventory file /s01/db_1/inventory/oneoffs/9696904/etc/config/inventory.xmlPatchObject::PatchObject looks for the deploy file /s01/db_1/inventory/oneoffs/9696904/etc/config/deploy.xmlPatchObject::PatchObject looks for the interview file /s01/db_1/inventory/oneoffs/9696904/etc/config/sequence.xmlPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/deploy.xml does not existPatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/deploy.xml unreadablePatchObject::createPatchObject() interview file /s01/db_1/inventory/oneoffs/9696904/etc/config/sequence.xml does not exist or is not readablePatchObject::createPatchObject() deploy actions file /s01/db_1/inventory/oneoffs/9696904/etc/config/sequence.xml unreadableparserXMLFile : startparserXMLFile : startLsInventory::init()LsInventorySession::process(): creates an output file /s01/db_1/cfgtoollogs/opatch/lsinv/lsinventory2011-05-06_23-38-48PM.txtLsInventory::init() returnsLsinventory Output file location : /s01/db_1/cfgtoollogs/opatch/lsinv/lsinventory2011-05-06_23-38-48PM.txt--------------------------------------------------------------------------------[Rules: should lock OH and Central Inv.= true, read from OUI= true, write to OUI= true, read from system= true, write to system= true, -all= false, -xml= false, -match= false, -patch= false, -detail= false, print patch = true, print all prods = false, print top-level prod = true, print detail = false, print by-bugs fixed = false ]Installed Top-level Products (2):Oracle Database 10g 10.2.0.1.0Oracle Database 10g Release 2 Patch Set 3 10.2.0.4.0There are 2 products installed in this Oracle Home.Interim patches (4) :OneOffEntry::getBugIDsFixed()OneOffEntry::getBugIDsFixed() returns 3 bugs.Patch 9696904 : applied on Fri May 06 22:26:37 CST 2011Unique Patch ID: 12575150 Created on 10 May 2010, 23:22:02 hrs PST8PDT Bugs fixed: 7025450, 8575528, 6904068 This patch overlays patches: 9352164 This patch needs patches: 9352164 as prerequisitesOneOffEntry::getBugIDsFixed()OneOffEntry::getBugIDsFixed() returns 1 bugs.Patch 7527908 : applied on Fri May 06 22:25:33 CST 2011Unique Patch ID: 12546933 Created on 30 Apr 2010, 12:48:09 hrs PST8PDT Bugs fixed: 7527908 This patch overlays patches: 9352164 This patch needs patches: 9352164 as prerequisitesOneOffEntry::getBugIDsFixed()OneOffEntry::getBugIDsFixed() returns 10 bugs.Patch 9654991 : applied on Fri May 06 21:33:38 CST 2011Unique Patch ID: 12816418 Created on 30 Jun 2010, 18:30:40 hrs PST8PDT Bugs fixed: 9714832, 9713537, 9678695, 9655017, 9173248, 8309642, 9678697, 9678690 9573054, 9654991 This patch overlays patches: 9352164 This patch needs patches: 9352164 as prerequisitesOneOffEntry::getBugIDsFixed()OneOffEntry::getBugIDsFixed() returns 414 bugs.Patch 9352164 : applied on Fri May 06 21:29:20 CST 2011Unique Patch ID: 12307477 Created on 1 Apr 2010, 11:33:14 hrs PST8PDT Bugs fixed: 9377578, 6418420, 7835247, 7207654, 7592346, 6724797, 7936993, 7331867 9093300, 7535152, 7552067, 5879114, 8866013, 5457450, 8344348, 7272297 7136866, 7196894, 6258480, 7013124, 6512622, 6355586, 7196532, 8568395 8309587, 7557226, 5399699, 6509115, 8568397, 8568398, 7127618, 5701695 6052226, 7424804, 6817593, 7553884, 6741425, 7513673, 6783812, 8437213 6452766, 6469211, 7527650, 8309592, 8479537, 5991038, 5686407, 6945157 7639602, 9119226, 6403091, 7589862, 7552082, 6711853, 8304589, 6052169 8199266, 6327692, 5756769, 9352191, 7460818, 6268409, 8232056, 6687381 6972843, 8230457, 6800507, 7027551, 6778714, 6200820, 6645719, 7393804 6775231, 3934160, 6683178, 6650256, 5085288, 7528105, 7329252, 6378112 6151380, 6844866, 4723109, 8544896, 5126719, 5890312, 5934363, 7036453 7610362, 8426816, 8433026, 7270434, 7172531, 6451626, 8247855, 5497338 6324944, 6874522, 7175513, 6960489, 7341598, 8576156, 6797677, 8342923 5895190, 6756739, 7150470, 7593835, 7356443, 7044551, 8227106, 4695511 7298688, 5747462, 8556340, 7197445, 5348308, 7937113, 8341623, 7569205 8409848, 6053134, 6163771, 6851669, 6181488, 6375150, 6825866, 7210921 7295780, 6345573, 7033630, 6954722, 6824129, 7523475, 7457766, 7309458 8324577, 6840740, 6804746, 7375611, 8268054, 6981690, 6512811, 6988017 7375613, 8344399, 7340448, 8362683, 7375617, 8251247, 5933656, 6005347 9145204, 6599920, 7238230, 6379441, 6452375, 6352003, 6833965, 7136489 6610218, 7612639, 6392076, 7225204, 9119194, 5476236, 9442328, 7609057 7609058, 6605106, 6374297, 6193945, 4693355, 8217795, 7039896, 7432514 7330909, 6952701, 7190270, 8287155, 7587008, 7207932, 6802650, 7189447 8481935, 4598439, 9442331, 6615740, 7155655, 6749617, 9442335, 7159505 5868257, 5727166, 7173005, 6917874, 9442339, 7013768, 7691766, 7385253 7291739, 7225720, 7257770, 7363767, 7244238, 6941717, 8267348, 7710551 8354686, 7247217, 8328954, 7299153, 8909984, 6681695, 8702276, 9119284 8217011, 7661251, 6265559, 6823287, 6991626, 6954829, 5259835, 6500033 5923486, 7432601, 7022234, 8534387, 5147386, 7697802, 6653934, 7375644 6490140, 7662491, 8331466, 5623467, 6070225, 6635214, 7396409, 6638558 7038750, 6714608, 6838714, 6870937, 7219752, 7263842, 7278117, 6882739 5404871, 8836667, 8373286, 7393292, 6678845, 6903051, 7936793, 6600051 7155248, 4966512, 7155249, 7197637, 8836308, 8568402, 8568404, 8568405 8431487, 5704108, 6343150, 7280764, 6923450, 7643632, 6145177, 8836671 8310931, 6640411, 8347704, 8836675, 7155250, 7155251, 8836677, 7155252 8836678, 7155253, 8292378, 7155254, 6219529, 7411865, 8227091, 8340379 7276960, 6145687, 7659217, 5863926, 7022905, 6852598, 7123643, 6596564 6413089, 6851438, 8836681, 8836683, 8836684, 8836686, 7579469, 7494333 7315642, 8340383, 6786022, 8340387, 6926448, 7600026, 7462072, 6679303 8815639, 7197583, 7172752, 7326645, 7008262, 9173244, 9173248, 7573151 8490879, 7477934, 6725634, 6733655, 6799205, 6980597, 7499353, 6084232 6014513, 7140204, 7254987, 8833280, 6647480, 6120004, 7693128, 6760697 6051177, 8247215, 6858062, 7189645, 6844739, 6768251, 7196863, 5630796 7378661, 7378735, 5970301, 6705822, 8290506, 6658484, 7599944, 9173253 8309623, 7125408, 7257461, 6987790, 7568556, 6919819, 8886674, 5883691 6955744, 7801939, 6074620, 7149004, 6857917, 8283650, 6445948, 5929055 6110752, 7552042, 8210889, 8287504, 6506617, 7306915, 6271590, 5386204 6976005, 8330783, 7606362, 5377242, 7043989, 8309632, 7575925, 6870047 8309637, 5902053, 8309639, 7028176, 6827260, 7588384, 4726401, 6720712 5910650, 6752765, 6971433, 6024730, 8315482, 6628122, 8239142, 9352164 5695562, 4637902, 7345904, 8309642, 6994160, 8556586, 6404447, 8220734 6919764, 7597354, 7523787, 6029179, 5231155, 6455659probeAndPrintRACInfo()Rac::getInstance() initializing racTypeRac::getClusterNodes() calling OiiOracleHomeInfo::getNodeList() OiiiOracleHomeInfo::getNodeList() returned 0 elements.RAC::getClusterNodes() returned a list of 0 elements. User did not use -no_inventory, so why clusterNodes are empty? clusterNodes is null or empty, set racType to NO_RACNot a RAC system or shouldn't be treated like oneRac::shouldPropagate()Rac::getInstance() racType has been initialized, just return the cached object[Rac: [RacType: typeDesc= NO_RAC, detail= Not a RAC system or shouldn't be treated like one ], should propagate file= false, local node="", remote nodes=", racTypeDetail="Not a RAC system or shouldn't be treated like one", racDiagMsg="OPatch detected non-cluster Oracle Home from the inventory and will patch the local system only. ]probeAndPrintRACInfo() done--------------------------------------------------------------------------------Locker::release()OUISessionManager::unRegister()Un-Registering the caller : OPatchLsInventory::getInstance() returnsCleaning up the directory : "/s01/db_1/.patch_storage/patch_unzip"...OPatch succeeded.本文转自maclean_007 51CTO博客,原文链接:http://blog.51cto.com/maclean/1277780