3 Replies Latest reply: Dec 5, 2012 10:37 PM by Niket Kumar RSS

    PLS-00905: object SYS.DBMS_DATAPUMP is invalid

    963894
      环境如下:
      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
          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
            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
              @utlrp.sql <--------------$ORACLE_HOME/rdbms/admin

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