Вы находитесь на странице: 1из 3

Pedro F.

Carvalho Analista de Sistemas

contato@pedrofcarvalho.com.br S. J. Rio Preto SP 2009

Exportao de Dados no Oracle Quando precisamos transferir os dados de um servidor Oracle para outro, ou para realizarmos cpias de segurana, uma das alternativas utilizar a ferramenta exp, que est presente em todas as verses do Oracle. Esta ferramenta normalmente executada em linha de comando, possui diversos parmetros para definir o que deve ser exportado. O objetivo deste artigo explicar alguns destes parmetros. No final sero abordadas algumas informaes sobre a ferramenta imp que realiza o oposto do exp, ela importa os objetos para o banco de dados. 1. Exportando dados no Oracle com o Exp

O utilitrio exp ir gerar um arquivo (dump) binrio com os objetos e as estruturas dos mesmos. Este arquivo pode ser enviado para outro servidor, com sistema operacional distinto que mesmo assim ser possvel realizar a importao dos dados. Somente necessrio cuidar para que a verso do programa importador (imp) no seja anterior a verso que foi empregada para gerar o arquivo. possvel usar este utilitrio de forma interativa, neste artigo sero mostrados os parmetros mais comuns quando executado em linha de comando. String de conexo com o banco de dados Para conectar com o Oracle precisamos informar o usurio, a senha e a instncia do Oracle. Formato: usurio/senha@instncia, caso seja executado o comando diretamente no servidor, onde exista somente uma instncia do Oracle, no precisaremos informar a instncia. Arquivo de destino O arquivo que iremos gerar deve ser informado no parmetro file. Normalmente a extenso utilizada dmp. Formato: file=caminho\arquivo.dmp Log da exportao Caso seja interessante gerar um log com informaes sobre a exportao dos objetos. Formato: log=caminho\arquivo.log Exportao do banco de dados inteiro Quando for necessrio exportar todo o banco de dados utilize o parmetro FULL. Formato: full=y Exportao de Grants (direitos) Normalmente o exp grava os grants relacionados a cada objeto, porm se estiver exportando somente alguns objetos e/ou usurios, muitas vezes os direitos atribudos em um ambiente no tenham sentido no servidor de destino dos objetos. Formato: grants=n Exportao de ndices Caso no seja necessrio enviar os ndices para o Oracle de destino. Formato: indexes=n Seleo de Tabelas

Pedro F. Carvalho Analista de Sistemas

contato@pedrofcarvalho.com.br S. J. Rio Preto SP 2009

Para selecionar somente algumas tabelas para exportar, informe o parmetro Table. Formato: tables=(Tabela1,Tabela2,...,TabelaN) Exportao de Triggers Caso no seja necessrio enviar as triggers para o Oracle de destino. Formato: triggers=n

2.

Importando com o Imp

Algumas consideraes so importantes no momento de importar os dados em verses diferentes do Oracle: Usar um programa imp com a mesma verso do exp usado para exportar os dados. Quando o banco de destino possuir uma verso menor do que a origem, exportar os dados com o exp da verso do destino. Se o usurio que exportou os dados tiver direitos de DBA, ser necessrio importar os dados com um usurio que tambm tenha direitos de DBA. Considere a tabela de caracteres configurada na Origem e no Destino, dependendo da combinao a acentuao e caracteres especiais podem ser perdidos. String de conexo com o banco de dados Da mesma forma como no exp precisamos informar a string de conexo com o banco de dados de destino. Formato: usurio/senha@instncia Arquivo de origem O arquivo de onde sero lidas as informaes deve ser especificado no parmetro file. Formato: file=caminho\arquivo.dmp Log da importao Para registrar as ocorrncias da importao das informaes utilize o parmetro log. Formato: log=caminho\arquivo.log Troca de usurio Caso o usurio de destino dos objetos seja diferente do usurio de origem, precisaremos indicar isto para o importador atravs de dois parmetros: fromuser e touser. Formato: fromuser=usuarioorigem touser=usuariodestino Importao do arquivo inteiro Para importarmos todos os objetos exatamente como foi exportado, basta informar o parmetro full. Formato: full=y Ignorar erros Para desprezar os erros de criao dos objetos informe o parmetro Ignore. Caso este parmetro no seja informado e alguma tabela que estiver sendo importada, j existir, ser gerado um erro e os dados desta tabela no sero includos. Formato: ignore=y

Pedro F. Carvalho Analista de Sistemas

contato@pedrofcarvalho.com.br S. J. Rio Preto SP 2009

Importar os dados das tabelas Caso seja necessrio somente importar a estrutura dos objetos informe o parmetro rows, assim os dados das tabelas no sero inseridos. Formato: rows=n Visualizao do contedo do arquivo Para consultar o contedo do arquivo de importao. Formato: show=y Seleo de Tabelas Para selecionar somente algumas tabelas para importar, utilize o parmetro Table. Formato: tables=(Tabela1,Tabela2,...,TabelaN)

3.

Exemplos de Exportao e Importao

Para estes exemplos ser considerado o seguinte ambiente: Usurio do banco de dados: Exemplo Senha do banco de dados: Senha123 Instncia do Oracle: ORCL Arquivo a ser gerado/importado: C:\tmp\DadosExemplo.dmp Exportar todos os objetos do usurio Exemplo: exp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp Exportar somente as tabelas Empresas e Clientes do usurio Exemplo: exp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp tables=(Empresas,Clientes)

Importar todos os objetos do usurio Exemplo: imp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp full=y Importar somente as tabelas Empresas e Clientes do usurio Exemplo: imp Exemplo/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp fromuser=Exemplo tables=(Empresas,Clientes) Importar todos os objetos do usurio Exemplo e gravar no usurio Producao: imp Producao/Senha123@ORCL file=c:\tmp\DadosExemplo.dmp fromuser=Exemplo touser=Producao

Вам также может понравиться