Export: Release 10.2.0.3.0
Connected to: Oracle Database 10g Enterprise Edition Release ORA-31634: job already exists
ORA-31664: unable to construct unique job name when defaulted
Este error ocurre generalmente cuando existen trabajos huérfanos de datapump que no se han limpiado de la base de datos
¿Cómo saber donde están esos trabajos?
en la vista dba_datapump_jobs se pueden visualizar (no usar las vistas gv$datapump_job que muestra los trabajos que actualmente están corriendo)
SELECT * FROM dba_datapump_jobs
WHERE job_name NOT LIKE 'BIN$%'
AND STATE = 'NOT RUNNING'
OWNER_NAME JOB_NAME OPERATION JOB_MODE STATE ATTACHED_SESSIONS
SYSTEM SYS_EXPORT_FULL_01 EXPORT FULL NOT RUNNING 0
SYSTEM SYS_IMPORT_FULL_01 IMPORT FULL NOT RUNNING 0
SYSTEM SYS_EXPORT_FULL_02 EXPORT FULL NOT RUNNING 0
SYSTEM SYS_IMPORT_SCHEMA_01 IMPORT SCHEMA NOT RUNNING 0
Los trabajos de datapump q se encuentren en estado NOT RUNNING, son los candidatos a limpiar
Generamos el query para eliminar Luego las tablas master del Datapump
SELECT 'Drop table ' || o.owner || '.' || object_name || ';'
FROM dba_objects o, dba_datapump_jobs j
WHERE o.owner = j.owner_name
AND o.object_name = j.job_name
AND j.job_name NOT LIKE 'BIN$%'
AND STATE = 'NOT RUNNING'
Ejecutamos el resultado de este query
Drop table SYSTEM.SYS_EXPORT_FULL_01;
Drop table SYSTEM.SYS_IMPORT_FULL_01;
Drop table SYSTEM.SYS_EXPORT_FULL_02;
Drop table SYSTEM.SYS_IMPORT_SCHEMA_01;
y con esto quedara solucionado el inconveniente :)
Este comentario ha sido eliminado por el autor.
ResponderEliminarBuen trabajo, me ha ayudado mucho .. gracias
ResponderEliminarDejo esta ultima consulta que genera los script de drop.
SELECT 'Drop table '|| o.owner||'.'||object_name ||';' SCRIPT
FROM dba_objects o, dba_datapump_jobs j
WHERE o.owner=j.owner_name AND o.object_name=j.job_name
and o.owner='&SCHEMA' and j.state='NOT RUNNING' ORDER BY 4,2;
Fabuloso - Gracias por tu Aporte!!
ResponderEliminarExcelente, muchas gracias funciono al 100
ResponderEliminarGracias fue de gran ayuda
ResponderEliminarExcelente, muchas gracias
ResponderEliminarY no se tiene que borrar el contenido de la tabla dba_datapump_jobs ?
ResponderEliminarGraciaaas!!!!... Acabo de salir de mi ignorancia!!! :D
ResponderEliminar