PROBLEM:

Received  ORA-4063 error while taking expdp, like below.

$ expdp system/manager directory=EXPDP dumpfile=exptest.dmp  logfile=exp_test.log schemas=TEST

Export: Release 11.2.0.4.0 - Production on Tue Feb 10 05:50:17 2015
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Starting "SYSTEM"."SYS_EXPORT_SCHEMA_01":  system/******** directory=EXPDP dumpfile=exptest.dmp  logfile=exp_test.log schemas=TEST
Estimate in progress using BLOCKS method...
>>> ORA-31642: the following SQL statement fails:
BEGIN "SYS"."DBMS_CUBE_EXP".SCHEMA_CALLOUT(:1,0,1,'10.02.00.03.00'); END;
ORA-04063: package body "SYS.DBMS_CUBE_EXP" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_CUBE_EXP"
>>> ORA-31642: the following SQL statement fails:
BEGIN "SYS"."DBMS_CUBE_EXP".SCHEMA_CALLOUT(:1,0,1,'10.02.00.03.00'); END;
ORA-04063: package body "SYS.DBMS_CUBE_EXP" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_CUBE_EXP"
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 380.1 GB

SOLUTION

Remove the entry as below:

SQL> conn / as sysdba
connected
SQL>select * from sys.exppkgact$ where package='DBMS_CUBE_EXP' order by 1,2;

PACKAGE                        SCHEMA                                CLASS       LEVEL#
------------------------------ ------------------------------ ------------ ------------
DBMS_CUBE_EXP                  SYS                                       2         1050
DBMS_CUBE_EXP                  SYS                                       4         1050
DBMS_CUBE_EXP                  SYS                                       6         1050

-- create a backup of the table SYS.EXPPKGACT$
create table sys.exppkgact$_bkup as select * from sys.exppkgact$;

-- remove the references to DBMS_CUBE_EXP
delete from sys.exppkgact$ where package='DBMS_CUBE_EXP' and schema='SYS';
commit;

Now run the expdp ,it will run successfully.

 

Reference metalink id: Doc ID 1998072.1

 

Please comment or write to support@dbaclass.com, if this has fixed your problem.