ORACLE 12.1.0.2 for linux7.6 應用PSU補丁31550110中的巨坑
一同事,在對ORACLE 12.1.0.2 for linux7.6 應用PSU補丁31550110時,遇到了各種巨坑。
首先,在Patch 31550110 apply的過程中,沒有任何異常,按照PSU 31550110的readme,在apply執行完成後,
無論單純的單例項還是CDB容器庫都需要執行./datapatch -verbose。
但是,在執行 ./datapatch -verbose時,操作日誌提示報錯資訊如下:
按照 datapatch -verbose日誌提示,分別在CDB和PDB資料庫執行select dbms_sqlpatch.verify_queryable_inventory
from dual;均提示錯誤資訊:
其次,依經驗需要排除PSU31550110的影響,處理方法是回退PSU31550110再執行select
dbms_sqlpatch.verify_queryable_inventory from dual;是否有同樣的錯誤資訊提示。回退 PSU31550110後再執行查詢
dbms_sqlpatch.verify_queryable_inventory from dual;,無論是CDB還是PDB依然是 KUP-00554 KUP-01005 KUP-01008 KUP-01007的報錯資訊提示。所以,可以確定 KUP-00554 KUP-01005 KUP-01008 KUP-01007問題在 PSU31550110應用之前就存在。 PSU31550110應用之前,需要先處理 KUP-00554 KUP-01005 KUP-01008 KUP-01007
報錯問題。
按照KUP-00554 KUP-01005 KUP-01008 KUP-01007在oracle mos查詢到文件Doc ID 2302799.1。
Doc ID 2302799.1提示的對應資料庫版本與本次操作的資料庫版本一致:
Doc ID 2302799.1提示的現象與本次操作的報錯資訊一致:
Doc ID 2302799.1提示的問題處理方法是重建OPATCH_XML_INV表,重建過程如下:
需要注意的是: OPATCH_XML_INV表重建需要在CDB層次 ( 2302799.1沒有特別說明 )操作。
再次,重建 OPATCH_XML_INV後,重新應用補丁集31550110也是成功的, datapatch -verbose不再有異常提示資訊:
oracle$[/app/oracle/product/12.1.0/dbhome_1/OPatch]./datapatch -verbose
SQL Patching tool version 12.1.0.2.0 Production on Mon Oct 25 18:04:27 2021
Copyright (c) 2012, 2016, Oracle. All rights reserved.
Log file for this invocation: /app/oracle/cfgtoollogs/sqlpatch/sqlpatch_28324_2021_10_25_18_04_27/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
Determining current state...done
Current state of SQL patches:
Bundle series PSU:
ID 201020 in the binary registry and ID 201020 in PDB CDB$ROOT, ID 201020 in PDB PDB$SEED, ID 201020 in PDB PDBORCL
Adding patches to installation queue and performing prereq checks...
Installation queue:
For the following PDBs: CDB$ROOT
Nothing to roll back
Nothing to apply
For the following PDBs: PDB$SEED PDBORCL
Nothing to roll back
The following patches will be applied:
31550110 (DATABASE PATCH SET UPDATE 12.1.0.2.201020)
Installing patches...
Patch installation complete. Total patches installed: 2
Validating logfiles...
Patch 31550110 apply (pdb PDB$SEED): SUCCESS
logfile: /app/oracle/cfgtoollogs/sqlpatch/31550110/23839756/31550110_apply_ORCL_PDBSEED_2021Oct25_18_04_50.log (no errors)
Patch 31550110 apply (pdb PDBORCL): SUCCESS
logfile: /app/oracle/cfgtoollogs/sqlpatch/31550110/23839756/31550110_apply_ORCL_PDBORCL_2021Oct25_18_04_51.log (no errors)
在CDB層次執行查詢select dbms_sqlpatch.verify_queryable_inventory from dual;正常返回結果:
但是,在PDB中執行 select dbms_sqlpatch.verify_queryable_inventory from dual;返回錯誤資訊:
關於KUP-00554 KUP-01005 KUP-01008 KUP-01007報錯問題,MOS上有另外一篇文件Doc ID 2293336.1有說明:
按照 Doc ID 2293336.1文件提示, select dbms_sqlpatch.verify_queryable_inventory from dual;查詢只能在CDB層次
執行,PDB層次不支援。
總結:
1. KUP-00554 KUP-01005 KUP-01008 KUP-01007報錯問題,CDB中需要重建表 OPATCH_XML_INV;
2. PDB中 KUP-00554 KUP-01005 KUP-01008 KUP-01007報錯問題可忽略
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29357786/viewspace-2839282/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 補丁psu、spu、cpu的意思
- 【PSU】怎麼給RAC打PSU補丁
- Oracle 補丁那些事兒(PS、PSU、CPU、SPU、BP、DBBP…)Oracle
- Oracle 11g RAC自動打GI PSU補丁Oracle
- OJVM+GI PSU補丁升級JVM
- Oracle 19c- 19.8應用32242453補丁Oracle
- Oracle 檢查當前資料庫CPU和PSU補丁資訊Oracle資料庫
- 【補丁】Oracle補丁的知識及術語Oracle
- Oracle的OPatch補丁更新Oracle
- ORACLE基於單機PSU應用方案Oracle
- Oracle RAC更新補丁Oracle
- 12. Oracle版本、補丁及升級——12.2. 補丁及補丁集Oracle
- Oracle 19c RAC打補丁過程避坑指南Oracle
- oracle 跨小版本dg切換應用補丁報錯處理Oracle
- oracle最新補丁查詢Oracle
- Oracle補丁介紹一Oracle
- oracle打補丁回顧Oracle
- ORACLE打補丁的方法和案例Oracle
- GI PSU打補丁之opatch auto 自動方式分別打GI_HOME和ORACLE_HOMEOracle
- oracle rac 打PSU補丁30805461兩個問題(Java版本及空間不足導致失敗)OracleJava
- Oracle各版本補丁的支援週期Oracle
- 【UP_ORACLE】如何給Oracle DG打補丁(二)備庫安裝補丁步驟Oracle
- 【UP_ORACLE】如何給Oracle DG打補丁(三)主庫安裝補丁步驟Oracle
- Mac 下打包APK的血淚坑(巨坑,巨巨坑,史前巨坑)MacAPK
- Android熱補丁之Robust(三)坑和解Android
- Oracle RAC 19.3打19.5.1 RU補丁Oracle
- windows oracle 11201打補丁報錯WindowsOracle
- RU 和 RUR oracle補丁說明Oracle
- Oracle 12.2應用PSU後資料庫無法啟動Oracle資料庫
- Pycharn破解補丁啟用
- 【PSU】Oracle打PSU及解除安裝PSU(單例項)Oracle單例
- Oracle Goldengate 12c打pus補丁OracleGo
- Oracle 12.2之後補丁RU RUR概要Oracle
- Oracle psu查詢Oracle
- Oracle PSU 簡介Oracle
- 熱更新應用--熱補丁Hotfix學習筆記筆記
- Centos7.2_Oracle12.1.0.2_RAC_installCentOSOracle
- Android外掛化、熱補丁中繞不開的Proguard的坑Android