This discussion is archived
3 Replies Latest reply: Dec 5, 2012 8:37 PM by Niket Kumar RSS

PLS-00905: object SYS.DBMS_DATAPUMP is invalid

963894 Newbie
Currently Being Moderated
环境如下:
OS:AIX 6.1
DB:11.2.0.2

数据库被同事执行了如下操作:
connect / as sysdba;
SQL> startup upgrade;
SQL> @catalog.sql <--------------$ORACLE_HOME/rdbms/admin
SQL> @catproc.sql <--------------$ORACLE_HOME/rdbms/admin
SQL> @utlrp.sql <--------------$ORACLE_HOME/rdbms/admin
SQL> shutdown immediate;
SQL> startup;

在执行catalog.sql时发现大量错误就ctrl+C,强行中断了。现在数据库重新启动后发现如下问题:

1、expdp进行备份报错
UDE-06550: operation generated ORACLE error 6550
ORA-06550: line 1, column 104:
PLS-00905: object SYS.DBMS_DATAPUMP is invalid
ORA-06550: line 1, column 100:
PL/SQL: Statement ignored
ORA-06550: line 1, column 206:
PLS-00905: object SYS.DBMS_DATAPUMP is invalid
ORA-06550: line 1, column 202:
PL/SQL: Statement ignored

alter package SYS.DBMS_DATAPUMP compile;
报错


2、DBA_REGISTERY视图失效
SQL> select comp_name, version, status from dba_registry;
ORA-04063: package body "SYS.DBMS_REGISTRY" has errors


3、数据库可以的基本读写功能还正常
可以正常启动、关闭,alert文件在关闭、启动过程无异常
数据库可以正常的支撑业务系统,ERP系统



请高手指点下解决办法。
想重新执行catalog.sql 、catproc.sql 、utlrp.sql 一次脚本,会不会变得更糗呢。
  • 1. Re: PLS-00905: object SYS.DBMS_DATAPUMP is invalid
    Srini Chavali-Oracle Oracle ACE Director
    Currently Being Moderated
    This is an international forum where the language norm is English - can you re-post in English ?

    HTH
    Srini
  • 2. Re: PLS-00905: object SYS.DBMS_DATAPUMP is invalid
    963894 Newbie
    Currently Being Moderated
    I'm truly grateful for your help, my Englist is poor.

    The system environment is listed as follows:
    OS:AIX 6.1
    DB:11.2.0.2


    My Oracle database has been performed those script:
    connect / as sysdba;
    SQL> startup upgrade;
    SQL> @catalog.sql <--------------$ORACLE_HOME/rdbms/admin
    SQL> @catproc.sql <--------------$ORACLE_HOME/rdbms/admin
    SQL> @utlrp.sql <--------------$ORACLE_HOME/rdbms/admin
    SQL> shutdown immediate;
    SQL> startup;


    When catalog.sql was going, lots of error printed, then dba press "CTRL+C".
    After restart,the database became abnoral.

    1、expdp command error
    UDE-06550: operation generated ORACLE error 6550
    ORA-06550: line 1, column 104:
    PLS-00905: object SYS.DBMS_DATAPUMP is invalid
    ORA-06550: line 1, column 100:
    PL/SQL: Statement ignored
    ORA-06550: line 1, column 206:
    PLS-00905: object SYS.DBMS_DATAPUMP is invalid
    ORA-06550: line 1, column 202:
    PL/SQL: Statement ignored

    alter package SYS.DBMS_DATAPUMP compile;
    this also return warnnig

    2、DBA_REGISTERY became invalid
    SQL> select comp_name, version, status from dba_registry;
    ORA-04063: package body "SYS.DBMS_REGISTRY" has errors


    3、the app is running normally,and Oracle database can be manipulated to read and write.
  • 3. Re: PLS-00905: object SYS.DBMS_DATAPUMP is invalid
    Niket Kumar Pro
    Currently Being Moderated
    @utlrp.sql <--------------$ORACLE_HOME/rdbms/admin

    run again utlrp.sql in database and provide output from dba_registery.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points