Trabalhando com EXPDP/IMPDP

Para a equipe do Dia a Dia Ltda.Olá pessoal, DBA, integrantes do Projeto DBA, demais leitores.
O assunto hoje é export e import com Oracle Datapump.

Apresentarei dicas bem simples de utilização desta ferramenta que serve para criação de backups lógicos, transporte de dados entre outros. 

E de antemão te dou os parabéns porque você achou um dos nossos Easter eggs do Projeto DBA, veja lá embaixo.

Muitas vezes precisamos fazer cópias de schemas (owners) quer seja para guardar como uma cópia de segurança quer seja para retorná-lo em outro schema para alguma tarefa de comparação, sei lá. O fato é que a Oracle a partir da versão 10g tem uma ferramenta muito legal para isso. Na verdade ela veio substituir com louvor algo que já existia antes o EXP/IMP. Porém agora com algumas (várias) novidades a mais.

O exemplo de hoje é algo bem simples, vamos fazer uma cópia de um owner HR (padrão de exemplos do banco de dados) e restaurar os objetos em outro owner.

1- Primeiramente trabalhar com o DATAPUMP requer um Oracle Directory, onde serão gravados os arquivos de DUMP, ou seja, arquivo que contém a cópia (backup lógico).

CREATE DIRECTORY dump AS ‘/oracle/dump/’;
Neste comando o filesystem deverá obrigatoriamente existir e o usuário de sistema operacional proprietário do banco de dados (normalmente o usuário oracle) deverá ter privilégio nela.

2- Após criar o Diretório precisamos conceder os privilégios de leitura e gravação. Em nosso exemplo iremos disponibilizar este diretório para todos os usuários do Banco de Dados concedendo o privilégio para o schema PUBLIC;

GRANT read, write ON DIRECTORY dump TO PUBLIC;
Observação: Não façam isso “em casa” evitem dar privilégios para PUBLIC. Tudo que der a este é como se estivesse dando a todos os outros usuários.

3- O usuário que irá conectar para proceder a importação posteriormente deverá ter privilégios específico para isso.
Iremos conceder o Privilégio IMP_FULL_DATABASE para o usuário teste que irá Importar:

GRANT IMP_FULL_DATABASE to teste;

5- Após isso basta exportar e depois importar

5.1- Exportando com usuario teste com Oracle Data Pump:

expdp teste/senha_teste directory=dump dumpfile=teste.dmp schema=HR logfile=teste.log

Poderia utilizar:
tables=owner.tabela1, owner.tabela2
full=y
Diversas outras opções ainda existem para serem utilizadas, maiores informações nas documentações do Oracle:
https://docs.oracle.com/cd/E11882_01/server.112/e22490/dp_export.htm#SUTIL200

5.2- Importando com usuario TESTE no Oracle DataPump, remapeando por schemas(schema TESTE para o TESTE2) e remapeando por Tablespaces (Tablespace TESTE para o TESTE2):

impdp teste/teste directory=dump dumpfile=teste.dmp logfile=testeimp.log remap_schema=teste:teste2 remap_tablespace=teste:teste2

( Obs: Caso queira remapear mais de uma tablespace, utilizem o seguinte parâmetro setado abaixo:

REMAP_TABLESPACE = teste0:teste2, teste1:teste2.

Aqui no exemplo eu comentei a conexão feita através do owner teste, mas normalmente utilizamos conectar com system ou sys. Para este último a conexão deve ser feita assim:

expdp ” ‘/ as sysdba’ ” directory=dump…  Similarmente podendo ser utilizado para importar.

Parabéns!! Você encontrou nosso Easter Egg.
Oportunidade única de desconto no que já e quase de graça!!!

Se você gostou desse post, que tal aprender ainda mais com o Projeto DBA? Ter a chance de dar um upgrade na sua carreira através de uma oportunidade única de participar de todos os cursos do projeto DBA pagando apenas R$ 120,00.
Isso mesmo! R$ 120,00 por todos os cursos listados no projeto ainda grupo do Telegram de apoio com acesso vitalício.
Só nesta página. neste link abaixo você pagará apenas R$ 120,00

Cursos do pacote completo
  1. DBA Jr
  2. DBA Pleno
  3. Básico de SQL
  4. Oracle RAC
  5. Tuning de banco de dados
  6. Disaster e Recovery

Curso completo Apenas R$120,00:

Pague pelo Mercado Pago em até 12x

Dúvidas, saiba mais em rauldba.com.br/sucesso

Sobre raul andrade

DBA e Instrutor Oracle, apaixonado pela minha família e por ensinar.
Esta entrada foi publicada em DBA Oracle. Adicione o link permanente aos seus favoritos.

Deixe um comentário