Oracle数据库从11.1.0.7升级到11.2.0.3 SYS.DBMS_AQADM_SYS包出现错误


    Oracle数据库从11.1.0.7升级到11.2.0.3 SYS.DBMS_AQADM_SYS包出现错误,最突出的表现是执行expdp备份时出现以下报错:

[oracle@hisdb ~]$ expdp \'/ as sysdba\' directory=dump_dir2 dumpfile=orcl_full_bak040228.dmp full=y parallel=2

Export: Release 11.2.0.3.0 - Production on Fri Feb 28 23:16:59 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-31626: job does not exist
ORA-31637: cannot create job SYS_EXPORT_FULL_02 for user SYS
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT_INT", line 798
ORA-39244: Event to disable dropping null bit image header during relational select
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.KUPC$QUE_INT", line 1825
ORA-04063: package body "SYS.DBMS_AQADM_SYS" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_AQADM_SYS"

在metalink找到一篇文章用于解决该问题:
Data Pump Job Fails With ORA-31626 ORA-31637 ORA-39080 ORA-04063 And ORA-06508 (文档 ID 563701.1)
修改时间:2013-3-23 类型:PROBLEM

In this Document

Symptoms
Cause
Solution
References


APPLIES TO:

Oracle Database - Enterprise Edition - Version 10.2.0.1 to 11.2.0.3 [Release 10.2 to 11.2]
Information in this document applies to any platform.

SYMPTOMS

An error stack similar to the following occurs when running a Data Pump job:

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
ORA-31626: job does not exist
ORA-31637: cannot create job SYS_EXPORT_SCHEMA_01 for user SYSTEM
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT_INT", line 600
ORA-39080: failed to create queues "KUPC$C_1_20080413190701" and "" for Data Pump job
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPC$QUE_INT", line 1580
ORA-04063: package body "SYS.DBMS_AQADM_SYS" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_AQADM_SYS" 

CAUSE

This issue will happen if there is invalid SYS-owned objects, specially on these two scenarios:

i. Presence of user-created objects named the reserved word 'SYSTEM'.  Naming any database object 'SYSTEM' can invalidate advanced queuing objects, which in turn can invalidate some components of the SYS.KUPC$DATAPUMP_QUETAB queue table, which Data Pump uses.

ii. Or if SYS.DBMS_AQADM is invalid.

SOLUTION

To resolve the problem, please apply the steps as described:

1. Remove any objects named the reserved word 'SYSTEM' as per Document 469895.1.

2. Then drop and recreate the SYS.KUPC$DATAPUMP_QUETAB queue table as per Document 361025.1

3. And finally, check and recompile SYS.DBMS_AQADM:

conn / as sysdba
spool support.out
select owner, object_type, status from dba_objects where object_name = 'DBMS_AQADM';
alter package sys.DBMS_AQADM compile;
alter package sys.DBMS_AQADM compile body;

-- If any ALTER fails, then check the errors:
select * from dba_errors where name = 'DBMS_AQADM' and type = 'PACKAGE BODY';

-- If it indicates:
missing : SYS.AQ$_SCHEDULES ;
missing/invalid package specification : DBMS_PRVTAQIP

-- These are both created by catqueue.sql which is run from catproc.sql:
-- Execute catproc.sql:

$ORACLE_HOME/rdbms/admin/catproc.sql
$ORACLE_HOME//rdbms/admin/utlrp.sql

spool off 


Still have questions ?

To discuss this information further with Oracle experts and industry peers, we encourage you to review, join or start a discussion in the My Oracle Support  Streams and Distributed Database Community.

The goal of this community is to exchange knowledge and concepts about Oracle Streams Advanced Queuing (AQ) and distributed databases, with special consideration for the components listed below:
    -    Distributed Databases
    -    Streams Replication and Advanced Queuing
    -    Advanced Replication
    -    XA


If you feel that a Service Request is needed, please be sure to provide the information listed below:

1. Instance alert log file.
2. Trace file if generated
3. RDA report.  Document 314422.1
4. Upload spooled text file 'support.out' 


To provide feedback on this note, click on the "Rate this document" link above.

REFERENCES

NOTE:361025.1  - Invalid Objects After Installing a 10.2 Patchset
NOTE:469895.1  - CATUPGRD.SQL FOLLOWING MIGRATION LEAVES AQ OBJECTS INVALID

相关文章:
   《 Oracle Database 11.1.0.7 for Windows升级到11.2.0.3.4 for Linux遇到的问题 》: http://blog.itpub.net/23135684/viewspace-751193/

--end--

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23135684/viewspace-1098482/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23135684/viewspace-1098482/

你可能感兴趣的:(Oracle数据库从11.1.0.7升级到11.2.0.3 SYS.DBMS_AQADM_SYS包出现错误)