Dica: Como selecionar tabelas de uma database para backup e usar o EXP (Oracle)

A partir da versão 10g a Oracle introduziu uma nova ferramenta de execução de backups das databases muito mais eficiente que o exp, o então conhecido expdp.
Com o expdp é possível realizar o backup apenas das tabelas desejadas utilizando um único parâmetro (INCLUDE) na linha de comando (há também o parâmetro EXCLUDE, que exclui as tabelas desejadas no backup).
O exp, avô do expdp, não possui este parâmetro, mas nem por isso você ficará limitado em realizar o backup de suas tabelas.
Abaixo coloco um passo-a-passo de como pode ser feito um backup das suas tabelas usando o exp.


1) Primeiro conecte-se na database que deseja executar o backup e selecione as tabelas que você NÃO quer incluir no backup.
SELECT table_name FROM user_tables WHERE table_name NOT IN ('tabela01','tabela02','tabela03');

2) Copie a saída do SELECT para o Word e utilize a ferramenta "Localizar e substituir" para formatar o conteúdo.
  • Em "Localizar:" digite, ^p 
  • Em "Substituir por:" digite, , (uma virgula) 
  • Clique no botão "Substituir Tudo" 
Veja o exemplo na imagem abaixo.

Após a formatação o conteúdo ficará algo assim:
tabela05,tabela06,tabela07,tabela08,tabela09

3) Crie um novo arquivo no bloco de notas chamado tables.param e cole o SELECT das tabelas que foram formatadas no word.
Inclua no início do arquivo o seguinte TABLES=( COPIE O SELECT FORMATADO NO WORD AQUI ).
OBS: Não se esqueça de fechar os parênteses.

Exemplo:
TABLES=(tabela05,tabela06,tabela07,tabela08,tabela09)

4) Para executar o backup, execute o exp utilizando o parâmetro "parfile" com arquivo tables.param.
Exemplo:
exp usuario/senha file=database_backup.dmp parfile=tables.param
Você pode incluir outros parâmetros no exp sem problemas.

Exemplo:
exp usuario/senha file=database_backup.dmp log=database_backup.log consistent=y parfile=tables.param

O exemplo foi criado em um ambiente Windows, mas não há nenhuma restrição para realiza-los em outros ambientes.
A única coisa que você irá precisar é de um software para formatar o texto da saída do SELECT das tabelas para depois compila-lo no arquivo de parâmetro que será utilizado no exp.
Tenha sempre ciência de ao excluir tabelas do seu backup você poderá encontrar alguns problemas na restauração deste backup caso tenha dependência das tabelas excluídas, como por exemplo, chaves estrangeiras.

Comentários

Postagens mais visitadas deste blog

Gestão de Serviços de TI com Open Source - OTRS