2009-03-26 4 views
6

У меня есть вся БД, которая будет импортирована как свалка в мою. Я хочу исключить данные из определенных таблиц (главным образом потому, что они огромны по размеру и не полезны). Я не могу полностью исключить эти таблицы, так как мне нужен объект таблицы как таковой (за вычетом данных), и мне придется создавать их в моей схеме, если я это сделаю. Кроме того, в отсутствие этих табличных объектов различные другие внешние ограничения, определенные в других таблицах, также не будут импортированы и должны быть переопределены. Поэтому мне нужно исключить только данные из определенных таблиц. Мне нужны данные из всех других таблиц, хотя ,Импорт выборочных данных с использованием impdp

Есть ли набор параметров для impdp, которые могут мне помочь?

ответ

8

Определенно сделать 2 пробега. Один, чтобы создать все объекты таблицы, но вместо того, чтобы использовать таблицы во втором impdp перспективе использовать исключающий

impdp ... Content=data_only exclude=TABLE:"IN ('table1', 'table2')" 

Другой способ работает, но таким образом, у вас есть только список таблиц, которые не требуется против все, что вы хотите.

9

Я хотел бы сделать два прохода в него: Сначала я бы импортировать метаданные только:

impdp ... CONTENT=METADATA_ONLY

Второй будет включать в себя данные только для таблиц, я был заинтересован в:

impdp ... CONTENT=DATA_ONLY TABLES=table1,table2...

1

Синтаксис:

EXCLUDE=[object_type]:[name_clause],[object_type]:[name_clause] 
INCLUDE=[object_type]:[name_clause],[object_type]:[name_clause] 

Примеры оператора-использования:

EXCLUDE=SEQUENCE 
or EXCLUDE=TABLE:"IN ('EMP','DEPT')" 
or EXCLUDE=INDEX:"= 'MY_INDX'" 
or INCLUDE=PROCEDURE:"LIKE 'MY_PROC_%'" 
or INCLUDE=TABLE:"> 'E'" 

Параметр также может быть сохранено в файле параметров, например: exp.par

DIRECTORY = my_dir 
DUMPFILE = exp_tab.dmp 
LOGFILE = exp_tab.log 
SCHEMAS = scott 
INCLUDE = TABLE:"IN ('EMP', 'DEPT')" 
1

Если размер таблицы большой для экспорта, вы можете использовать параметр «SAMPLE» в команде expdp для ta экспорт ке таблицы для того, что когда-либо процент вы хотите ....

$ expdp tables=T100test DIRECTORY=expimp1 DUMPFILE=test12.dmp SAMPLE = 10; 

Эта команда экспортирует только 10% данных данных таблицы T100test в.

Смежные вопросы