Hoy vamos a ver una solución rápida para un error común.
Cuando actualizamos el Opatch de la base de datos al ultimo OPatch(versión 6880880) podemos encontrarnos con que el binario no detecte el Java
-bash-4.2$ ./opatch lsinventory Java (1.6) could not be located. OPatch cannot proceed! OPatch returns with error code = 1
La solución es muy sencilla la propia instalación de binarios de Oracle cuenta con un jdk que es válido para la ejecución del Opatch, así que solamente tendremos que indicarle al Opatch donde esta esta ruta. Para ello usaremos el flag -jdk en el que le diremos que puede usar el propio $ORACLE_HOME/jdk
-bash-4.2$ ./opatch lsinventory -jdk $ORACLE_HOME/jdk Oracle Interim Patch Installer version 12.2.0.1.9 Copyright (c) 2017, Oracle Corporation. All rights reserved. Oracle Home : /opt/app/oracle/product/12.1.0/db_1 Central Inventory : /opt/app/oraInventory from : /opt/app/oracle/product/12.1.0/db_1/oraInst.loc OPatch version : 12.2.0.1.9 OUI version : 12.1.0.2.0 Log file location : /opt/app/oracle/product/12.1.0/db_1/cfgtoollogs/opatch/opatch2017-06-12_19_10-54PM_1.log Lsinventory Output file location : /opt/app/oracle/product/12.1.0/db_1/cfgtoollogs/opatch/lsinv/lsinventory2017-06-12_19_10-54PM.txt -------------------------------------------------------------------------------- Local Machine Information:: Hostname: PRUEBAS ARU platform id: 226 ARU platform description:: Linux x86-64 Installed Top-level Products (1): Oracle Database 12c 12.1.0.2.0 There are 1 products installed in this Oracle Home. There are no Interim patches installed in this Oracle Home. -------------------------------------------------------------------------------- OPatch succeeded.
Como veis, una solución sencilla que nos evitará tener que lidiar con los distintos JAVA instalados en el servidor.
Como siempre, mas información en :
- Descargar el ultimo opatch (6880880) Versión (Doc ID 274526.1)
- Master Note For OPatch (Doc ID 293369.1)