mardi 11 décembre 2012

ORA-04063: package body "SYS.DBMS_DATAPUMP" has errors

En exécutant un import avec datapump dans une base de données 11.2.0.3 j'ai rencontré l'erreur suivante:

UDI-04063: operation generated ORACLE error 4063
ORA-04063: package body "SYS.DBMS_DATAPUMP" comporte des erreurs
ORA-06508: PL/SQL : unite de programme nommee : "SYS.DBMS_DATAPUMP" introuvable
ORA-06512: a ligne 1


J'ai essayé de compiler les objets invalides, mais toujours le même problème:

SYS> @?/rdbms/admin/utlrp

SYS> alter package dbms_datapump compile body;

Avertissement : Corps de package modifie avec erreurs de compilation.

SYS> show errors
Erreurs pour PACKAGE BODY DBMS_DATAPUMP :

LINE/COL ERROR
-------- -----------------------------------------------------------------
4490/3 PL/SQL: Statement ignored
4490/3 PLS-00306: numero ou types d'arguments errones dans appel a
'GET_STATUS_INT'


Voir la liste des objets invalides:

select u.name owner, o.name object_name, o.status status
from sys.user$ u, sys.obj$ o
where u.user# = o.owner#
and o.status != 1
order by owner;

SYS DBMS_DATAPUMP 3
SYS _NEXT_OBJECT 0


Recharger donc datapump comme suit:

SYS>@?/rdbms/admin/dbmsdp.sql

Cela génère d'autres objets invalides, mais SYS.DBMS_DATAPUMP n'est plus dans la liste:

select u.name owner, o.name object_name, o.status status
from sys.user$ u, sys.obj$ o
where u.user# = o.owner#
and o.status != 1
order by owner;

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS KUPC$_EXIT 5
SYS KUPC$_SQL_FILE_JOB 5
SYS KUPC$_ESTIMATE_JOB 5
SYS KUPC$_LOAD_DATA 5
SYS KUPC$_LOAD_METADATA 5
SYS KUPC$_UNLOAD_DATA 5
SYS KUPC$_UNLOAD_METADATA 5
SYS KUPC$_RELEASE_FILES 5
SYS KUPC$_SEQUENTIAL_FILE 5
SYS KUPC$_DISK_FILE 5
SYS KUPC$_STOP_JOB 5
SYS KUPC$_START_JOB 5
SYS KUPC$_SET_PARAMETER 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS KUPC$_SET_PARALLEL 5
SYS KUPC$_OPEN 5
SYS KUPC$_METADATA_REMAP 5
SYS KUPC$_METADATA_TRANSFORM 5
SYS KUPC$_METADATA_FILTER 5
SYS KUPC$_LOG_ERROR 5
SYS KUPC$_LOG_ENTRY 5
SYS KUPC$_DATA_REMAP 5
SYS KUPC$_DATA_FILTER 5
SYS KUPC$_RESTART 5
SYS KUPC$_ADD_FILE 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS KUPC$_ADD_DEVICE 5
SYS KUPC$_MESSAGE 5
SYS KUPCC 5
SYS _NEXT_OBJECT 0
SYS DBMS_CUBE_EXP 5
SYS DBMS_AW_EXP 5
SYS DBMS_CDC_EXPDP 5
SYS DBMS_CDC_DPUTIL 5
SYS DBMS_DST 5
SYS DBMS_DATA_MINING 5
SYS DBMS_DM_IMP_INTERNAL 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS DBMS_DM_EXP_INTERNAL 5
SYS DBMS_DM_MODEL_IMP 5
SYS DBMS_DM_MODEL_EXP 5
SYS DBMS_DM_EXP_INTERNAL 5
SYS DMP_SEC 5
SYS DBMS_SQLTCB_INTERNAL 5
SYS DBMS_FILE_GROUP_UTL_INVOK 5
SYS DBMS_STREAMS_TABLESPACE_ADM 5
SYS DBMS_STREAMS_TBS_INT_INVOK 5
SYS DBMS_STREAMS_TBS_INT 5
SYS DBMS_STREAMS_DATAPUMP_UTIL 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS DBMS_STREAMS_DATAPUMP 5
SYS DBMS_STREAMS_RPC 5
SYS DBMS_LOGREP_IMP 5
SYS DBMS_LOGREP_EXP 5
SYS DBMS_STREAMS_MT 5
SYS DBMS_REPCAT_EXP 5
SYS DBMS_WRR_INTERNAL 5
SYS DBMS_SWRF_INTERNAL 5
SYS LOGSTDBY_INTERNAL 5
SYS DBMS_RULE_EXP_UTL 5
SYS DBMS_TTS 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS DBMS_PLUGTS 5
SYS KUPV$FT_INT 5
SYS KUPV$FT 5
SYS KUPD$DATA_INT 5
SYS KUPD$DATA 5
SYS KUPP$PROC 5
SYS KUPF$FILE 5
SYS KUPF$FILE_INT 5
SYS KUPM$MCP 5
SYS KUPW$WORKER 5
SYS KUPC$QUE_INT 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS KUPC$QUEUE_INT 5
SYS DBMS_DATAPUMP 5
SYS DBMS_METADATA_UTIL 5
SYS DBMS_METADATA_INT 5
SYS DBMS_METADATA 5
SYS DBMS_SCHED_MAIN_EXPORT 5
SYS DBMS_STREAMS_TBS_INT_INVOK 5
SYS KUPF$FILE_INT 5
SYS KUPC$_WORKER_GET_PWD 5
SYS KUPC$_WORKER_FILE_LIST 5
SYS KUPC$_WORKER_EXIT 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS KUPC$_WORKERERROR 5
SYS KUPC$_WORKER_LOG_ENTRY 5
SYS KUPC$_TABLE_DATA_ARRAY 5
SYS KUPC$_BAD_FILE 5
SYS KUPC$_DEVICE_IDENT 5
SYS KUPC$_WORKER_FILE 5
SYS KUPC$_GET_WORK 5
SYS KUPC$_ENCRYPTED_PWD 5
SYS KUPC$_FILE_LIST 5
SYS KUPC$_MASTERJOBINFO 5
SYS KUPC$_MASTERERROR 5

OWNER OBJECT_NAME STATUS
------------------------------ ------------------------------ ----------
SYS KUPC$_API_ACK 5
SYS KUPC$_POST_MT_INIT 5

Compiler les objets invalides:

SYS>@?/rdbms/admin/utlrp

Après la compilation:

select u.name owner, o.name object_name, o.status status
from sys.user$ u, sys.obj$ o
where u.user# = o.owner#
and o.status != 1
order by owner;

SYS _NEXT_OBJECT 0


Hope it helps...

Aucun commentaire:

Enregistrer un commentaire