Несколько дней новогоднего волшебства:
Успейте начать обучение в 2018-ом году со скидкой до 30%!
Выбрать курс

Проблема с DATA PUMP на PDB

SUBD_Deep_30-5020-75be77.08_site.png

Столкнулись с неожиданной проблемой — на одной из pdb перестали работать impdp/expdp.

ORA-31626: job does not exist
ORA-31637: cannot create job SYS_IMPORT_FULL_03 for user SYS
ORA-06512: at «SYS.DBMS_SYS_ERROR», line 95
ORA-06512: at «SYS.KUPV$FT_INT», line 810
ORA-39244: Event to disable dropping null bit image header during relational select

Дополнительный трейс, включённый c помощью

— Enable event
ALTER SYSTEM SET EVENTS = ‘39089 trace name context forever, level 0x300’ ;

— Disable event
ALTER SYSTEM SET EVENTS = ‘39089 trace name context off’ ;

дал тоже немного пищи для размышлений:

*** 2017-09-28 17:45:55.708
KUPC:17:45:55.708: Queue table ownership migration failed - Aborting job
KUPC:17:45:55.709: Error Code: -39244
KUPC:17:45:55.709: Error Text: Prepare Queue Table ORA-39244: Event to disable dropping null bit image header during relational select
KUPV:17:45:55.709: Delete request for MT: SYS.SYS_EXPORT_TABLE_01

*** 2017-09-28 17:46:05.176
SHDW:17:46:05.176: Trapped to shadow error handling routine
SHDW:17:46:05.177: Top-level error number reported = -31626
SHDW:17:46:05.177: Shadow context error supplied = 0
SHDW:17:46:05.177: Error stack at time of error report:
SHDW:17:46:05.177: ORA-31637: cannot create job SYS_EXPORT_TABLE_01 for user SYS
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT_INT", line 810
ORA-39244: Event to disable dropping null bit image header during relational select
SHDW:17:46:05.177: Backtrace stack:
SHDW:17:46:05.177: ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT_INT", line 810
ORA-06512: at "SYS.KUPV$FT", line 1027
ORA-06512: at "SYS.DBMS_DATAPUMP", line 5869
SHDW:17:46:05.177: Call stack:
SHDW:17:46:05.177: ----- PL/SQL Call Stack -----
 object line object
 handle number name
0xe11183120 1461 package body SYS.DBMS_DATAPUMP
0xe11183120 5889 package body SYS.DBMS_DATAPUMP
0xcd1571f10 1 anonymous block
SHDW:17:46:05.183: *** GET_STATUS (1210) procedure call ***
SHDW:17:46:05.183: handle = 0
SHDW:17:46:05.183: mask = 9
SHDW:17:46:05.183: timeout = 0

На всех остальных pdb операции работали прекрасно.

Итак, решение проблемы

Следующая последовательность действий помогла восстановить работоспособность:

@?/rdbms/admin/utlrp.sql на заданной pdb; — выключение других инстансов RAC (дабы исключить побочное влияние); — перезагрузка pdbclose/start; — вызов инструкций SYS.DBMS_DATAPUMP для экспорта схемы:

DECLARE
 l_dp_handle NUMBER;
 l_last_job_state VARCHAR2(30) := 'UNDEFINED';
 l_job_state VARCHAR2(30) := 'UNDEFINED';
 l_sts KU$_STATUS;
BEGIN
 l_dp_handle := DBMS_DATAPUMP.open(
 operation => 'EXPORT',
 job_mode => 'SCHEMA',
 remote_link => NULL,
 job_name => 'EMP_EXPORT',
 version => 'LATEST');

DBMS_DATAPUMP.add_file(
 handle => l_dp_handle,
 filename => 'TEST_USER.dmp',
 directory => 'IMP_DATA_DIR');

DBMS_DATAPUMP.add_file(
 handle => l_dp_handle,
 filename => 'TEST_USER.log',
 directory => 'IMP_DATA_DIR',
 filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_LOG_FILE);

DBMS_DATAPUMP.metadata_filter(
 handle => l_dp_handle,
 name => 'SCHEMA_EXPR',
 value => '= ''TEST_USER''');

DBMS_DATAPUMP.start_job(l_dp_handle);

DBMS_DATAPUMP.detach(l_dp_handle);
END;
/

И после этого всё стало работать как надо. Вот такой вот шаманский ритуал!

Есть вопрос? Напишите в комментариях!

Автор
0 комментариев
Для комментирования необходимо авторизоваться