今天在给一个省打一个9208侦听内存泄漏的patch,打的时候,没有报错,但是在opatch lsinventory的时候,却报错了:
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 |
oracle@tj_dc01:/oracle/app/oracle/product/9.2.0 > opatch lsinventory Oracle Interim Patch Installer version 1.0.0.0.63 Copyright (c) 2009 Oracle Corporation. All Rights Reserved.. Oracle recommends you to use the latest OPatch version and read the OPatch documentation available in the OPatch/docs directory for usage. For information about the latest OPatch and other support-related issues, refer to document ID 293369.1 available on My Oracle Support (https://myoraclesupport.oracle.com) Oracle Home : /oracle/app/oracle/product/9.2.0 Oracle Home Inventory : /oracle/app/oracle/oraInventory Central Inventory : /oracle/app/oracle/oraInventory from : /var/opt/oracle/oraInst.loc OUI location : /oracle/app/oracle/oui OUI shared library : /oracle/app/oracle/oui/bin/hpunix/liboraInstaller.so Java location : /oracle/app/oracle/jre/1.3.1/bin/java Log file location : /oracle/app/oracle/product/9.2.0/.patch_storage/<patch ID>/*.log Creating log file "/oracle/app/oracle/product/9.2.0/.patch_storage/LsInventory__01-25-2010_16-25-28.log" Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/transform/Source at opatch.LsInventory.getOneOffList(LsInventory.java:675) at opatch.LsInventory.main(LsInventory.java:247) Result: There is no Interim Patch OPatch succeeded. |
这个opatch是从metalink上下载的最新的opatch,而且也是对应了HP IA的os平台,opatch的版本应该不会错。如果错了,opatch apply的时候就应该报了,怎么还会到lsinventory的时候才报错。
上metalink上查了这个问题(ID 417275.1),原来最新版本的opatch(p6880880_101000_HPUX-IA64.zip)要求需要在OUI 10.1.0.x和JRE 1.4.2,而这2个是需要在9205或者9206升级的时候才会安装,在基线版本9202,以及9203,9204的版本中只有OUI 2.2.0.x和JRE 1.3.1,9207和9208这2个版本是不含OUI和JRE的升级的。所以当我从HP IA的基线版本9202升级到9208,再使用opatch打完补丁,用opatch lsinventory检查的时候,就会因为OUI的问题出现上述的报错。
oracle上给的解决办法是:
1 2 |
1.下载patch 3540563----很可惜,这个patch没有HP IA的平台。 2.降级9208,重新升级到9205,再升级到9208。因为在升级到9205的时候,就升级了OUI和JRE,所以不会报错了----扯淡啊!我怎么可能为了这点小事去downgrate。 |
这里我提供2个方法来进行验证是否正确安装了patch:
1 |
1.在patch目录,用opatch query -verify: |
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 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
oracle@tj_dc01:/opt/ora_inst/ora_patch9208/5576565 > opatch query -verify Oracle Interim Patch Installer version 1.0.0.0.63 Copyright (c) 2009 Oracle Corporation. All Rights Reserved.. Oracle recommends you to use the latest OPatch version and read the OPatch documentation available in the OPatch/docs directory for usage. For information about the latest OPatch and other support-related issues, refer to document ID 293369.1 available on My Oracle Support (https://myoraclesupport.oracle.com) Query ... Please enter the patch location: /opt/ora_inst/ora_patch9208/5576565 ---------- Query starts ------------------ Patch ID: 5576565 The contents of the file: /var/opt/oracle/oraInst.loc #Oracle Installer Location File Location #Fri Jan 22 10:16:22 GMT+08:00 2010 inventory_loc=/oracle/app/oracle/oraInventory inst_group=dba Parsing /oracle/app/oracle/oraInventory/ContentsXML/comps.xml Found "oracle.swd.oui" version "2.2.0.14.0" on "/oracle/app/oracle/oui" Verifying patch... Verifying that patch ID is in Oracle Home inventory. Verifying archive files. Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib32/libnl9.a/nlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib32/libnl9.a/nlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib32/libnl9.a/snlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib32/libnl9.a/snlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib/libnl9.a/nlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib/libnl9.a/nlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib/libnl9.a/snlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib/libnl9.a/snlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib32/libnl9.a/nlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib32/libnl9.a/nlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib32/libnl9.a/snlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib32/libnl9.a/snlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib/libnl9.a/nlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib/libnl9.a/nlpc.o" Comparing "/opt/ora_inst/ora_patch9208/5576565/files/lib/libnl9.a/snlpc.o" and "/oracle/app/oracle/product/9.2.0/.patch_storage/verify/lib/libnl9.a/snlpc.o" OPATCH_VERIFY_OK: Patch has been applied. ---------- Query ends ------------------- Do you want to check out another patch? Please respond Y|N > N Query stops. OPatch succeeded. oracle@tj_dc01:/opt/ora_inst/ora_patch9208/5576565 > |
1 |
2.用一个老版本的opatch检查也是可以的。 |
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 |
oracle@tj_dc01:/opt/ora_inst/ora_patch9208/OPatch > opatch lsinventory Oracle Interim Patch Installer version 1.0.0.0.53 Copyright (c) 2005 Oracle Corporation. All Rights Reserved.. We recommend you refer to the OPatch documentation under OPatch/docs for usage reference. We also recommend using the latest OPatch version. For the latest OPatch version and other support related issues, please refer to document 293369.1 which is viewable from metalink.oracle.com Oracle Home = /oracle/app/oracle/product/9.2.0 Location of Oracle Universal Installer components = /oracle/app/oracle/oui Location of OraInstaller.jar = "/oracle/app/oracle/oui/lib" Oracle Universal Installer shared library = /oracle/app/oracle/oui/bin/hpunix/liboraInstaller.so Location of Oracle Inventory Pointer = /var/opt/oracle/oraInst.loc Location of Oracle Inventory = /oracle/app/oracle/oraInventory Path to Java = /oracle/app/oracle/jre/1.3.1/bin/java Log file = /oracle/app/oracle/product/9.2.0/.patch_storage/<patch ID>/*.log Creating log file "/oracle/app/oracle/product/9.2.0/.patch_storage/LsInventory__01-25-2010_16-25-14.log" Result: Installed Patch List: ===================== 1) Patch 5576565 applied on Sun Jan 24 10:34:11 GMT+08:00 2010 [ Base Bug(s): 5576565 ] OPatch succeeded. oracle@tj_dc01:/opt/ora_inst/ora_patch9208/OPatch > |
附件为这个老版本的opatch:点击下载:p2617419_10102_generic_opatch