Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como usar o utilitário de exportação de bomba de dados Oracle para criar arquivo de despejo na máquina local?


Se estiver usando o Data Pump, não há uma maneira direta de armazenar um arquivo de despejo em sua máquina local. Foi assim que o Data Pump projetou.

No entanto, existe uma das maneiras possíveis de alcançar o que você deseja. Uma solução alternativa tem duas etapas:
  1. Execute expdp como de costume, que cria um arquivo de despejo no servidor
  2. Usar ocp ferramenta para transferir um arquivo de despejo de um servidor de banco de dados para sua máquina local (e vice-versa, se você quiser).

Um ocp tool significa "Oracle Copy" e escrito exatamente com o propósito de copiar arquivos de despejo de/para um servidor de banco de dados. Está disponível aqui:https:// github.com/maxsatula/ocp/releases/download/v0.1/ocp-0.1.tar.gz Essa é uma distribuição de origem, então, uma vez baixado e descompactado, execute ./configure && make

(Espero que você não tenha o Windows no lado do cliente, porque nunca tentei compilá-lo lá)

Essa é uma ferramenta de linha de comando simples com uma sintaxe simples. Por exemplo, este comando irá puxar um arquivo para você:

ocp <connection_string> DATA_PUMP_DIR:remote_file_name.dmp local_file_name.dmp

A ferramenta usa uma conexão de banco de dados e um conjunto mínimo de privilégios de banco de dados.

Atualização:

Finalmente consegui ajustar o código fonte e construir ocp ferramenta para Windows de 32 bits:

https://github.com/maxsatula /ocp/releases/download/v0.1/ocp-0.1-win32.zip

Compilado/testado com o Instant Client 11.2.0.4 de 32 bits disponível aqui:http://www.oracle.com/technetwork/topics/winsoft-085727.html

instantclient-basiclite-nt-11.2.0.4.0.zip (20.258.449 bytes)

Acredito que funcionará com uma instalação completa do Oracle Client também (apenas observe os bits, deve ser 32), porém não verifiquei sozinho.

Infelizmente, a compilação do Windows de ocp não possui um medidor de progresso sofisticado durante a transferência de arquivos. Esse pedaço de código tinha muitas coisas específicas do *nix, então eu tive que cortá-lo.

Além disso, como ele usa as bibliotecas popt e zlib, que são compiladas como parte do projeto GnuWin e disponíveis apenas em 32 bits, ocp para Windows também é de 32 bits. Espero que não ter uma versão de 64 bits não seja uma missão crítica para você.

Atualização 2:

Aviso! Certifique-se de sempre usar a conexão de servidor DEDICADO quando baixar arquivos do servidor, caso contrário (para servidor COMPARTILHADO) a cópia baixada do arquivo será corrompida sem mensagens de erro!