一次诡异的db补丁处理

一:环境描述

操作系统:redhat7.6

数据库版本:12.2.0.1

补丁版本:12.2.0.1.200414 (30886680)

二:问题描述

GI安装前打补丁成功后,安装db软件。然后更新db补丁

[root@bjyctzdb09 software]# /u01/app/oracle/product/12.2.0/db_1/OPatch/opatchauto apply /software/30920127/ -oh /u01/app/oracle/product/12.2.0/db_1/  -analyze


OPatchauto session is initiated at Tue Aug 27 10:59:44 2019

System initialization log file is /u01/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchautodb/systemconfig2020-12-23_11-38-45AM.log

OPATCHAUTO-72050: System instance creation failed.
OPATCHAUTO-72050: Failed while retrieving system information.
OPATCHAUTO-72050: Please check log file for more details.

OPatchauto session completed at Tue Aug 27 11:00:01 2020
Time taken to complete the session 0 minute, 17 seconds

Topology creation failed.

查看日志信息

[root@bjyctzdb09 ~]# vi /u01/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchautodb/systemconfig2020-12-23_11-38-45AM.log
2020-12-23 11:38:45,457 INFO  [1] oracle.dbsysmodel.driver.sdk.productdriver.ClusterInformationLoader - crsType: CRS
2020-12-23 11:38:45,529 INFO  [1] oracle.dbsysmodel.driver.sdk.productdriver.ClusterInformationLoader - running: true
2020-12-23 11:38:45,605 INFO  [1] com.oracle.glcm.patch.auto.db.product.DBPatchingUtil - Set the permission of the file /u01/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatchautodb to 775
2020-12-23 11:38:45,660 INFO  [1] oracle.dbsysmodel.driver.sdk.productdriver.ClusterInformationLoader - running: true
2020-12-23 11:38:45,677 INFO  [1] oracle.dbsysmodel.driver.sdk.productdriver.ClusterInformationLoader - running: true
2020-12-23 11:38:45,688 INFO  [1] com.oracle.glcm.patch.auto.OPatchAutoHelper - Executing command [bash, -c, ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1 /u01/app/oracle/product/12.2.0/db_1/bin/orabasehome]
2020-12-23 11:38:45,702 INFO  [1] com.oracle.helper.util.HelperUtility - Orabasehome Output :
/u01/app/oracle/product/12.2.0/db_1


2020-12-23 11:38:45,702 INFO  [1] com.oracle.helper.util.HelperUtility - Oracle Base Home for /u01/app/oracle/product/12.2.0/db_1 is /u01/app/oracle/product/12.2.0/db_1
2020-12-23 11:38:45,723 FINER [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - ENTRY
2020-12-23 11:38:45,729 INFO  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - crsType: CRS
2020-12-23 11:38:45,787 INFO  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - running: true
2020-12-23 11:38:45,834 INFO  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - Checking for Exadata. Looking for /opt/oracle.cellos/ORACLE_CELL_OS_IS_SETUP file.
2020-12-23 11:38:45,835 INFO  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - This is not an Exadata environment
2020-12-23 11:38:46,298 CONFIG [1] com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver - Found local home at /u01/app/12.2.0/grid
2020-12-23 11:38:46,299 FINER [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - ENTRY
2020-12-23 11:38:46,369 FINER [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - ENTRY
2020-12-23 11:38:46,382 FINER [1] com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver - RETURN
2020-12-23 11:38:46,383 FINE  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver - oh: /u01/app/12.2.0/grid
2020-12-23 11:38:46,384 FINE  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver - version:
2020-12-23 11:38:46,387 FINE  [1] com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver - Home=/u01/app/oracle/product/12.2.0/db_1
2020-12-23 11:38:46,403 SEVERE [1] com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator - Stacktrace :: oracle.dbsysmodel.driver.sdk.productdriver.ProductDriverException: Error: Crs Driver could not collect information about the Oracle home: /u01/app/oracle/product/12.2.0/db_1 on bjyctzdb09
One reason could be that the current user does not have enough privileges to read the product information from this Oracle home.
To workaround this issue, try running command as a user with read privileges on this Oracle home or as root user.


com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver.makeHome(AbstractCrsProductDriver.java:388)
com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver.findOrMakeHome(AbstractCrsProductDriver.java:454)
com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver.makeDBHomes(AbstractCrsProductDriver.java:546)
com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver.buildSystemInstance(CrsProductDriver.java:322)
com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator.createSystemInstance(TopologyCreator.java:263)
com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator.process(TopologyCreator.java:177)
com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator.main(TopologyCreator.java:121)



2020-12-23 11:38:46,403 SEVERE [1] com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator - Not able to retrieve system instance details :: Error: Crs Driver could not collect information about the Oracle home: /u01/app/oracle/product/12.2.0/db_1 on bjyctzdb09
One reason could be that the current user does not have enough privileges to read the product information from this Oracle home.
To workaround this issue, try running command as a user with read privileges on this Oracle home or as root user.




oracle.dbsysmodel.driver.sdk.productdriver.ProductDriverException: Error: Crs Driver could not collect information about the Oracle home: /u01/app/oracle/product/12.2.0/db_1 on bjyctzdb09
One reason could be that the current user does not have enough privileges to read the product information from this Oracle home.
To workaround this issue, try running command as a user with read privileges on this Oracle home or as root user.


        at com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver.makeHome(AbstractCrsProductDriver.java:388)
        at com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver.findOrMakeHome(AbstractCrsProductDriver.java:454)
        at com.oracle.glcm.patch.auto.db.product.driver.crs.AbstractCrsProductDriver.makeDBHomes(AbstractCrsProductDriver.java:546)
        at com.oracle.glcm.patch.auto.db.product.driver.crs.CrsProductDriver.buildSystemInstance(CrsProductDriver.java:322)
        at com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator.createSystemInstance(TopologyCreator.java:263)
        at com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator.process(TopologyCreator.java:177)
        at com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator.main(TopologyCreator.java:121)
2020-12-23 11:38:46,403 SEVERE [1] com.oracle.glcm.patch.auto.db.integration.model.productsupport.topology.TopologyCreator - Failure reason::null

三:问题处理

一头雾水,最后不知道那个操作步骤解决问题,下面记录操作步骤

1.查看mos尝试找到解决方案

 

 根据提示,可能是产品目录表的问题,将产品目录表卸载之后,继续尝试安装,无效

./runInstaller -detachhome ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1/ ORACLE_HOME_NAME=OraDB12Home1

2.怀疑是$ORACLE_HOME/bin/oracle权限问题,修改权限属性无效

3.根据mos,更新节点2OPatch无效

4.修改/u01目录权限

chmod -R 775 /u01

4.将删除的产品目录信息恢复,重新测试,通过

./runInstaller -attachHome ORACLE_HOME=/u01/app/oracle/product/12.2.0/db_1/ ORACLE_HOME_NAME=OraDB12Home1

5.应用补丁无报错

原文地址:https://www.cnblogs.com/hanglinux/p/14177992.html