原因:Oracle RDBMS和datafile整体目录迁移。现象:
2023-11-20T06:48:45.793948-05:00 Unable to obtain current patch information due to error: 20001, ORA-20001: Latest xml inventory is not loaded into table ORA-06512: at "SYS.DBMS_QOPATCH", line 2477 ORA-06512: at "SYS.DBMS_QOPATCH", line 894 ORA-06512: at "SYS.DBMS_QOPATCH", line 983 ORA-06512: at "SYS.DBMS_QOPATCH", line 2432 ORA-06512: at "SYS.DBMS_QOPATCH", line 857 ORA-06512: at "SYS.DBMS_QOPATCH", line 2457
[oracle@ray115 OPatch]$ ./opatch lsinv Oracle Interim Patch Installer version 12.2.0.1.29 Copyright (c) 2023, Oracle Corporation. All rights reserved. Oracle Home : /u01/app/oracle/product/12.2.0/db_1 Central Inventory : //u01/app/oraInventory from : /u01/app/oracle/product/12.2.0/db_1/oraInst.loc OPatch version : 12.2.0.1.29 OUI version : 12.2.0.1.4 Log file location : /data/app/oracle/product/12.2.0/db_1/cfgtoollogs/opatch/opatch2023-11-20_06-56-48AM_1.log List of Homes on this system: Home name= OraDB12Home1, Location= "/u01/app/oracle/product/12.2.0/db_1" LsInventorySession failed: RawInventory gets null OracleHomeInfo OPatch failed with error code 73
解决过程:
[oracle@ray115 sqlpatch]$ cd $ORACLE_HOME/OPatch [oracle@ray115 OPatch]$ ./datapatch -verbose SQL Patching tool version 12.2.0.1.0 Production on Mon Nov 20 06:42:47 2023 Copyright (c) 2012, 2021, Oracle. All rights reserved. Log file for this invocation: /data/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_7858_2023_11_20_06_42_47/sqlpatch_invocation.log Connecting to database...OK Note: Datapatch will only apply or rollback SQL fixes for PDBs that are in an open state, no patches will be applied to closed PDBs. Please refer to Note: Datapatch: Database 12c Post Patch SQL Automation (Doc ID 1585822.1) Bootstrapping registry and package to current versions...done Queryable inventory could not determine the current opatch status. Execute 'select dbms_sqlpatch.verify_queryable_inventory from dual' and/or check the invocation log /data/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_7858_2023_11_20_06_42_47/sqlpatch_invocation.log for the complete error. Prereq check failed, exiting without installing any patches. Please refer to MOS Note 1609718.1 and/or the invocation log /data/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_7858_2023_11_20_06_42_47/sqlpatch_invocation.log for information on how to resolve the above errors. SQL Patching tool complete on Mon Nov 20 06:42:59 2023
[oracle@ray115 OPatch]$ cat /etc/oraInst.loc inventory_loc=//data/app/oraInventory inst_group=oinstall [oracle@ray115 OPatch]$ cat /data/app/oraInventory/oraInst.loc inventory_loc=//data/app/oraInventory inst_group=oinstall [oracle@ray115 OPatch]$ cat /data/app/oraInventory/ContentsXML/inventory.xml <?xml version="1.0" standalone="yes" ?> <!-- Copyright (c) 1999, 2023, Oracle and/or its affiliates. All rights reserved. --> <!-- Do not modify the contents of this file by hand. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH>12.2.0.1.4</SAVED_WITH> <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME="OraDB12Home1" LOC="/data/app/oracle/product/12.2.0/db_1" TYPE="O" IDX="1"/> </HOME_LIST> <COMPOSITEHOME_LIST> </COMPOSITEHOME_LIST> </INVENTORY> [oracle@ray115 OPatch]$ cat $ORACLE_HOME/oraInst.loc inventory_loc=//data/app/oraInventory inst_group=oinstall
