Oracle升级出现ORA-04063 DBMS_REGISTRY has error
在做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成功。
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------