terça-feira, 13 de setembro de 2016

Export - Import resumido

Passos para o export e import no oracle - Resumo pessoal

1 - identificar as tablespaces de origem e destino

select TABLESPACE_NAME from dba_tablespaces where TABLESPACE_NAME like 'nome_schema_origem';
TABLESPACE_OWNER_ORIGEM

select TABLESPACE_NAME from dba_tablespaces where TABLESPACE_NAME like 'nome_schema_destino';
TABLESPACE_OWNER_DESTINO

2 - checar na origem e destino o diretório do oracle
select *from dba_directories - irá gerar no nome do diretório, no nosso caso DIR_EXP

3 - FAZER O EXPORT NA ORIGEM e backup no destino:
expdp user_dba schemas=nome_schema_origem directory=DIR_EXP dumpfile=exp_nome_owner_origem.dmp logfile=exp_nome_owner_origem.log

4 - se necessário fazer o scp para outro servidor:
scp /u01/app/oracle/admin/local_do_dump oracle@host_destino:/u01/app/oracle/admin/local_destino_do_dump/exp_nome_owner_origem.dmp


5 - fazer a limpeza do schema destino (fazer o backup antes, conforme o item 3)

select 'drop '|| object_type || ' nome_schema_destino.' || object_name || ' cascade constraints ; ' 
from dba_objects
where owner='nome_schema_destino'
and object_type like '%TABLE%';

select 'drop '|| object_type || ' nome_schema_destino.' || object_name || ' ; ' from dba_objects
where owner='nome_schema_destino'
and object_type!='LOB';


6 - fazer o import do dump com a opção REMAP:
SE FOR PARA A MESMA TABLESPACE:
impdp user_dba remap_schema=nome_schema_origem:nome_schema_origem remap_tablespace=TABLESPACE_OWNER_ORIGEM:TABLESPACE_OWNER_ORIGEM directory=DIR_EXP dumpfile=exp_nome_owner_origem.dmp  logfile=exp_nome_owner_origem_log TABLE_EXISTS_ACTION=append

SE FOR PARA TABLESPACE DIFERENTE:
impdp user_dba remap_schema=nome_schema_origem:nome_schema_destino remap_tablespace=TABLESPACE_OWNER_ORIGEM:TABLESPACE_OWNER_DESTINO directory=DIR_EXP dumpfile=exp_nome_owner_origem.dmp  logfile=exp_nome_owner_origem_TO_nome_schema_destino.log TABLE_EXISTS_ACTION=append

restore total de banco