#oracle11g #datapump
#oracle11g #datapump
Вопрос:
У меня есть таблица, в которой есть столбец пользовательского типа, я попытался переместить таблицу в другую схему,
Он отлично работал в режиме командной строки, однако, когда я пытаюсь использовать DBMS_DATAPUMP, происходит сбой с ошибкой ORA-39117, ниже приведены фильтры, которые я использовал.
Режим командной строки:
bin/expdp user1/password1 directory=TEST_DIR1 include=TABLE:"='TEST_TABLE_1'",TYPE:"IN ('TEST_TYPE_1')" reuse_dumpfiles=y dumpfile=TEST.dmp logfile=expdpTEST.log
bin/impdp user1/password1 directory=TEST_DIR1 include=TABLE:"='TEST_TABLE_1'",,TYPE:"IN ('TEST_TYPE_1')" dumpfile=TEST.dmp logfile=impdpTEST.log remap_schema=USER1:USER2 TRANSFORM=oid:n
С помощью приведенной выше команды перемещение стола прошло успешно. Но мы хотели бы сделать то же самое, используя блок pl / sql.
===Export===
DBMS_DATAPUMP.metadata_filter (
handle => h1,
name => 'NAME_EXPR',
VALUE => 'IN(''TEST_TABLE_1'',''TEST_TYPE_1'')'
);
dbms_datapump.metadata_filter(
handle => h1, name => 'INCLUDE_PATH_EXPR', value => 'IN (''TABLE'',''TYPE'')');
===Import===
DBMS_DATAPUMP.metadata_filter (
handle => h1,
name => 'NAME_EXPR',
VALUE => 'IN(''TEST_TABLE_1'',''TEST_TYPE_1'')'
);
dbms_datapump.metadata_filter(
handle => h1, name => 'INCLUDE_PATH_EXPR', value => 'IN (''TABLE'',''TYPE'')');
Ответ №1:
Эта проблема может не иметь ничего общего с impdp
vs DBMS_DATAPUMP
. Раньше у меня было много проблем с импортом объектно-реляционных таблиц. Мы так и не нашли решения, и проблема оказалась «случайной» — однажды она сработает, а в другой потерпит неудачу по причинам, которые мы так и не обнаружили. Если я правильно помню, мы предположили, что были проблемы с объектно-реляционными зависимостями, и исправили проблему, вручную импортировав несколько типов перед остальной частью импорта.
Другая возможность заключается в том, что импорт выполнен успешно, и сообщение об ошибке неверно. См. Документ ID 783358.1 — ORA-39117, неверно сообщенный на уровне Impdp, на support.oracle.com .
Комментарии:
1. Импорт работал нормально, следуя предложенному подходу, т.Е.. импортируйте все необходимые типы перед импортом таблиц.