sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo usar la utilidad de exportación de la bomba de datos de Oracle para crear un archivo de volcado en la máquina local?

Si usa Data Pump, no hay una forma directa de almacenar un archivo de volcado en su máquina local. Así es como se diseñó Data Pump.

Sin embargo, hay una de las formas posibles de lograr lo que quieres. Una solución tiene dos pasos:

  1. Ejecutar expdp como de costumbre, lo que crea un archivo de volcado en el servidor
  2. Usar ocp herramienta para transferir un archivo de volcado desde un servidor de base de datos a su máquina local (y viceversa, si lo desea).

Un ocp tool significa "Oracle Copy" y está escrito exactamente con el propósito de copiar archivos de volcado de un lado a otro desde/hacia un servidor de base de datos. Está disponible aquí:https:// github.com/maxsatula/ocp/releases/download/v0.1/ocp-0.1.tar.gz Esa es una distribución fuente, por lo que una vez descargada y desempaquetada, ejecute ./configure && make

(Esperemos que no tenga Windows en el lado del cliente, porque nunca intenté compilarlo allí)

Esa es una herramienta de línea de comandos simple con una sintaxis simple. Por ejemplo, este comando extraerá un archivo por usted:

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

La herramienta utiliza una conexión de base de datos y un conjunto mínimo de privilegios de base de datos.

Actualización:

Finalmente pude ajustar el código fuente y compilar ocp herramienta para Windows de 32 bits:

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

Compilado/probado con Instant Client 11.2.0.4 de 32 bits disponible aquí:http://www.oracle.com/technetwork/topics/winsoft-085727.html

instantclient-basiclite-nt-11.2.0.4.0.zip (20 258 449 bytes)

Creo que también funcionará con una instalación completa de Oracle Client (solo mire los bits, deberían ser 32), sin embargo, no lo comprobé yo mismo.

Desafortunadamente, la compilación de Windows de ocp no tiene un elegante medidor de progreso durante la transferencia de archivos. Ese fragmento de código tenía demasiadas cosas específicas de *nix, así que tuve que cortarlo.

Además, dado que utiliza las bibliotecas popt y zlib, que se compilan como parte del proyecto GnuWin y están disponibles solo en 32 bits, ocp para Windows también es solo de 32 bits. Con suerte, no tener una versión de 64 bits no es una misión crítica para usted.

Actualización 2:

¡Advertencia! ¡Asegúrese de usar siempre una conexión de servidor DEDICADA cuando descargue archivos del servidor, de lo contrario (para el servidor COMPARTIDO) la copia descargada del archivo se corromperá sin mensajes de error!