rac 升级补丁,执行datapatch报错:
-
[oracle@db1-[orcl19c1]-/oracle/app/oracle/product/19.3.0/db_1/OPatch]$ ./datapatch -verbose
-
SQL Patching tool version 19.14.0.0.0 Production on Thu Apr 28 19:24:51 2022
-
Copyright (c) 2012, 2021, Oracle. All rights reserved.
-
-
Log file for this invocation: /oracle/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_4141_2022_04_28_19_24_51/sqlpatch_invocation.log
-
-
Connecting to database...OK
-
Gathering database info...done
-
Bootstrapping registry and package to current versions...done
-
Determining current state...done
-
-
Current state of interim SQL patches:
-
Interim patch 33561310 (OJVM RELEASE UPDATE: 19.14.0.0.220118 (33561310)):
-
Binary registry: Installed
-
SQL registry: Not installed
-
-
Current state of release update SQL patches:
-
Binary registry:
-
No release update patches installed
-
SQL registry:
-
Applied 19.6.0.0.0 Release_Update 191217155004 successfully on 01-MAR-21 11.34.56.633243 AM
-
-
Error: prereq checks
-
patch 30484981: Error reading descriptor from registry: Couldn't open encmap gbk.enc:
-
No such file or directory
-
at /oracle/app/oracle/product/19.3.0/db_1/perl/lib/site_perl/5.28.1/x86_64-linux-thread-multi/XML/Parser.pm line 187.
-
XML::Simple called at /oracle/app/oracle/product/19.3.0/db_1/sqlpatch/sqlpatch.pm line 8123.
-
-
patch 30557433: Error reading descriptor from registry: Couldn't open encmap gbk.enc:
-
No such file or directory
-
at /oracle/app/oracle/product/19.3.0/db_1/perl/lib/site_perl/5.28.1/x86_64-linux-thread-multi/XML/Parser.pm line 187.
-
XML::Simple called at /oracle/app/oracle/product/19.3.0/db_1/sqlpatch/sqlpatch.pm line 8123.
-
-
Prereq check failed, exiting without installing any patches.
-
-
Please refer to MOS Note 1609718.1 and/or the invocation log
-
/oracle/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_4141_2022_04_28_19_24_51/sqlpatch_invocation.log
-
for information on how to resolve the above errors.
-
-
SQL Patching tool complete on Thu Apr 28 19:25:14 2022
不知道为何不能打开gbk.enc,的确没有这个文件,解决方法比较奇葩
-
create restore point rp1 guarantee flashback database; --为防止出现问题,加了个还原点以便回退
-
-
create table registry$sqlpatch_org as select * from registry$sqlpatch;
-
create table registry$sqlpatch_ru_info_org as select * from registry$sqlpatch_ru_info;
-
drop table registry$sqlpatch;
-
drop table registry$sqlpatch_ru_info;
-
@?/rdbms/admin/catsqlreg.sql
--然后再执行
-
./datapatch -verbose
-
-
--确认没有问题后,删掉还原点
-
drop restore point rp1;
怀疑还是xml信息解析时导致
这个看起来很像
解决方案给的是删除这些表后重建,执行datapatch时再填入最新的补丁信息。
参考:Doc ID 2645981.1
阅读(2020) | 评论(0) | 转发(0) |