IT Consulting Steffes

PLS-00201: identifier 'SYS.DBMS_CUBE_EXP' must be declared


Bei der Durchführung eines export data pump ( hier in der Version 11.2.0.3) tritt folgender Fehler auf:

Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.GET_TABLE_DATA_OBJECTS []
ORA-31642: the following SQL statement fails:
BEGIN "SYS"."DBMS_CUBE_EXP".SCHEMA_CALLOUT(:1,0,1,'11.02.00.00.00'); END;
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_METADATA", line 1245
ORA-06550: line 1, column 8:
PLS-00201: identifier 'SYS.DBMS_CUBE_EXP' must be declared
ORA-06550: line 1, column 8:
PL/SQL: Statement ignored
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.KUPW$WORKER", line 8353


Ursache:
In der Datenbank befinden sich noch OLAP Objekte im data dictionary während die OLAP Option nicht installiert oder deinstalliert wurde.
Zur Überprüfung mittels sqlplus as sysdba verbinden:

connect / as sysdba
SELECT * FROM SYS.EXPPKGACT$ WHERE PACKAGE = 'DBMS_CUBE_EXP';


Lösung:
Mittels folgendem Statement kann das übergebliebene Objekt gelöscht werden:
ggf. ein backup anlegen:

sqlplus / as sysdba
SQL> CREATE TABLE SYS.EXPPKGACT$_BACKUP AS SELECT * FROM SYS.EXPPKGACT$;


DBMS_CUBE_EXP von SYS.EXPPKGACT$ löschen:

SQL> DELETE FROM SYS.EXPPKGACT$ WHERE PACKAGE = 'DBMS_CUBE_EXP' AND SCHEMA= 'SYS';
SQL> COMMIT;


Nun sollte das export data pump utility wieder funktionieren.
Weitere Infos finden sich bei my Oracle support z.B. unter ID: 1328829.1


zurück zur Übersicht: Oracle Database Fehler