### Повний текст помилки:
ORA-39006: internal error
ORA-39065: unexpected master process exception in DISPATCH
ORA-01403: no data found
ORA-39097: Data Pump job encountered unexpected error 100
Для початку перевіримо наявність об'єктів зі статусом INVALID у схемі SYS
SET LINES 200
COL OBJECT_NAME FOR A35
COL OBJECT_TYPE FOR A25
COL Owner FOR A25
Select owner,object_name,object_type,status,created,LAST_DDL_TIME from dba_objects where status='INVALID' and owner='SYS' order by object_name;
Вигляд буде на зразок такого (Oracle 11g):
OWNER OBJECT_NAME OBJECT_TYPE STATUS CREATED LAST_DDL_
------------------------- ----------------------------------- ------------------------- ------- --------- ---------
SYS DBMS_AQELM PACKAGE BODY INVALID 10-DEC-12 10-DEC-12
DBMS_AW_EXP PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_CMP_INT PACKAGE INVALID 10-DEC-12 23-FEB-14
DBMS_DATAPUMP_UTL PACKAGE BODY INVALID 10-DEC-12 11-JUN-13
DBMS_FILE_GROUP PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_FILE_GROUP_UTL_INVOK PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_LOGMNR_INTERNAL PACKAGE BODY INVALID 07-DEC-12 23-FEB-14
DBMS_PRVTAQIP PACKAGE INVALID 07-DEC-12 23-FEB-14
DBMS_PRVTAQIP PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_REPCAT_MIGRATION PACKAGE INVALID 07-DEC-12 23-FEB-14
DBMS_REPCAT_MIGRATION PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_SQLTCB_INTERNAL PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_STREAMS_AUTH PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_STREAMS_MT PACKAGE INVALID 07-DEC-12 23-FEB-14
DBMS_STREAMS_MT PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_STREAMS_SM PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_STREAMS_SM PACKAGE INVALID 07-DEC-12 23-FEB-14
DBMS_SUMREF_UTIL PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_WORKLOAD_REPLAY PACKAGE BODY INVALID 10-DEC-12 02-MAY-14
DBMS_WRR_INTERNAL PACKAGE BODY INVALID 10-DEC-12 02-MAY-14
DBMS_XSTREAM_ADM_INTERNAL PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
DBMS_XSTREAM_AUTH PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
HTTPURITYPE TYPE BODY INVALID 10-DEC-12 23-FEB-14
KUPW$WORKER PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
SCHEDULER$_JOB_EVENT_HANDLER PROCEDURE INVALID 10-DEC-12 23-FEB-14
URIFACTORY PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
UTL_HTTP PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
UTL_SMTP PACKAGE BODY INVALID 10-DEC-12 10-DEC-12
UTL_SMTP PACKAGE INVALID 07-DEC-12 25-JAN-15
UTL_TCP PACKAGE BODY INVALID 10-DEC-12 23-FEB-14
UTL_URL PACKAGE BODY INVALID 10-DEC-12 10-DEC-12
UTL_URL PACKAGE INVALID 07-DEC-12 23-FEB-14
32 rows selected.
Причина помилки
Ми отримали цю помилку з-за того що пакети які належать до DATAPUMP маюсь статус INVALID.
Подивимся Datapump Metadata.
select count(*) from metanametrans$;
SQL> select count(*) from metanametrans$;
COUNT(*)
----------
0
Таблиця метаданих вище - порожня, що говорить про наявність проблеми. Коли я перевірив ту саму таблицю метаданих в іншій базі даних, вона містить 3393 рядки.
Рішення
Треба перекомпілювати об'єкти зі статусом INVALID у базі даних.
Для цього запускаємо відповідні скрипти:
@$ORACLE_HOME/rdbms/admin/catmet2.sql
@$ORACLE_HOME/rdbms/admin/utlrp.sql
Примітка: Ви також можете спробувати один раз запустити “utlrp.sql”, оскільки це просто перекомпіляція НЕПРАВИЛЬНИХ об’єктів. Але в моєму випадку це не працювало, оскільки дані таблиці відсутні.
Зараз немає НЕДІЙСНИХ об’єктів, і експорт працює добре.
$ expdp \'/ as sysdba\' estimate_only=y full=y
Export: Release 11.2.0.4.0 - Production on Wed Feb 25 16:53:07 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 "SYS"."SYS_EXPORT_FULL_01": "/******** AS SYSDBA" estimate_only=y full=y
Estimate in progress using BLOCKS method...
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
. estimated "SID_OWNER"."RECOTOR":"P201404" 4.248 GB
Коментарі