数据库升级ora-04063 DBMS_REGISTRY has error

时间:2021-03-04 05:14:00

在做Oracle数据库从11.2.0.1.0升级到11.2.0.2.8时,软件升级没有问题,实例升级没有问题,升级psu的时候。

执行@?/rdbms/admin/catbundle psu apply时,仅仅显示一部分信息,即终止apply。

在dba_registry_history中未显示11.2.0.2.8的psu信息;
select * from dba_registry_history;
ACTION_TIME                    ACTION          NAMESPACE  VERSION            ID BUNDLE_SER COMMENTS
------------------------------ --------------- ---------- ---------- ---------- ---------- ------------------------------
05-JUN-14 12.50.22.878147 PM   VIEW INVALIDATE                          8289601            view invalidation
05-JUN-14 12.50.23.234212 PM   UPGRADE         SERVER     11.2.0.2.0                       Upgraded from 11.2.0.1.0
05-JUN-14 12.50.59.175151 PM   APPLY           SERVER     11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.55.26.047671 PM   APPLY                      11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.55.37.411219 PM   ROLLBACK                   11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.58.26.752280 PM   ROLLBACK                   11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.58.57.774343 PM   ROLLBACK                   11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 02.03.58.934479 PM   APPLY                      11.2.0.2            0 PSU        Patchset 11.2.0.2.0

查询dba_registry的时候直接报错:
select * from dba_registry;
ORA-04063: package body "SYS.DBMS_REGISTRY_SYS" has errors
ORA-06508: PL/SQL: could not find program unit being called:
"SYS.DBMS_REGISTRY_SYS"
ORA-06512: at line 1

终于问题定位在DBMS_REGISTRY_SYS包失效,又一次跑一下prvtcr.plb脚本就可以解决:
SQL>@?/rdbms/admin/prvtcr.plb
重现查询dba_registry不再报错,接着又一次apply psu:
SQL>@?/rdbms/admin/catbundle.sql psu apply
select * from dba_registry_history;
ACTION_TIME                    ACTION          NAMESPACE  VERSION            ID BUNDLE_SER COMMENTS
------------------------------ --------------- ---------- ---------- ---------- ---------- ------------------------------
05-JUN-14 12.50.22.878147 PM   VIEW INVALIDATE                          8289601            view invalidation
05-JUN-14 12.50.23.234212 PM   UPGRADE         SERVER     11.2.0.2.0                       Upgraded from 11.2.0.1.0
05-JUN-14 12.50.59.175151 PM   APPLY           SERVER     11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.55.26.047671 PM   APPLY                      11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.55.37.411219 PM   ROLLBACK                   11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.58.26.752280 PM   ROLLBACK                   11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 01.58.57.774343 PM   ROLLBACK                   11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 02.03.58.934479 PM   APPLY                      11.2.0.2            0 PSU        Patchset 11.2.0.2.0
05-JUN-14 04.40.56.460140 PM   APPLY           SERVER     11.2.0.2            8 PSU        PSU 11.2.0.2.8
9 rows selected.

OK ,psu apply成功。