Oracle - Exportación de Datos Con Data Pump Export
Oracle - Exportación de Datos Con Data Pump Export
Buscar...
Tutoriales. adictosaltrabajo / Tutoriales / Oracle – Exportación de Datos con Data Pump Export [expdp]
0. Índice de contenidos.
1. Entorno Los más visitados de la semana
2. Introducción
Instalación y uso del plugin de
3. Preparación del entorno
comentarios de Facebook en n...
4. Comando expdp
Validación en lado cliente con
5. Algunos ejemplos
HTML5
6. Más información
VirtualBox. Configuración de la
conexión de red.
El cálculo de la liquidación por
1. Entorno
despido: el finiquito.
Para realizar este tutorial se ha empleado el siguiente entorno de desarrollo: Page Analytics
Hardware: Mac Book Pro 15″ Intel Core i7 2,8 GHz, 16 GB RAM
Sistema Operativo: Mac OS X Yosemite
Máquina virtual VirtualBox versión 4.3.20: Sistema operativo: Windows 7 Ultimate 32bits 2GB RAM
Oracle Database 11g Release 11.2.0.1.0
Uso de cookies
2. Introducción
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de nuestra política de cookies, pinche el enlace para mayor información
ACEPTAR
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 1/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
A partir de la versión 10g, Oracle incluye nuevas utilidades para importar y exportar datos mucho más potente
Tweets por @adictosaltrabaj
que los anteriores comandos imp y exp.
adictosaltrabajo
En este tutorial quiero revisar la herramienta de exportación Oracle Data Pump Export y sus parámetros más @adictosaltrabaj
comunes. Con esta herramienta podemos realizar exportaciones de datos y metadatos de nuestras bases de NUEVO TUTORIAL |
@sanchezsuarezj vuelve a la carga
datos Oracle, permitiéndonos establecer filtros muy finos respecto a los objetos y datos a exportar.
con 'Microservicios políglotas en
Spring Cloud con Spring Sidecar'.
Hay que tener en cuenta que, aunque se trate de una evolución de la anterior herramienta de exportación exp, ow.ly/m8iw30j9x6l
son comandos totalmente distintos. Si generamos la exportación con el comando exp, tendremos que emplear
el comando imp y si la generamos con expdp, lo tendremos que importar con impdp.
La operación de exportación la realizará el motor de Oracle, por lo que es necesario que el usuario de Oracle
con el que vamos a realizarla, demoexp, tenga acceso al directorio del sistema de ficheros destino. Para ello,
deberemos crear un objeto DIRECTORY que apunte al directorio destino y asignar permisos de READ y WRITE
sobre el directorio para el usuario.
Por simplificar el proceso, crearemos el directorio con el usuario demoexp directamente de forma que, al ser
creador del objeto DIRECTORY, ya tenga los privilegios de lectura y escritura.
1 C:>mkdir c:/tmp/demo
2 C:>mkdir c:/tmp/demo/export
3 C:>sqlplus demoexp/demoexp
4 SQL>CREATE DIRECTORY dir_demoexp_dmp as 'c:/tmp/demo/export/';
4. Comando expdp
Como comentamos en la introducción Data Pump Export es la utilidad de Oracle para la exportación de datos y
Uso de cookies
metadatos.
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de nuestra política de cookies, pinche el enlace para mayor información
ACEPTAR
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 2/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
El comando asociado es el ‘expdp’ y recibe una serie de parámetros para especificar de forma detallada qué
datos y metadamos queremos exportar.
En este tutorial nos vamos a centrar en el segundo modo, estableciendo un fichero de parámetros, por ser el
modo recomendado, sobre todo si se desea establecer filtros. Para indicarle a expdp el fichero con los
parámetros emplearemos el parámetro parfile:
1 USERID=demoexp
2 DIRECTORY=dir_demoexp_dmp
3 DUMPFILE=export_demo.dmp
4 LOGFILE=export.log
Donde:
USERID será el usuario que realizará la exportación. En nuestro caso será demoexp
DIRECTORY será el objeto DIRECTORY que hemos creado previamente en oracle y que apunta al
directorio de exportación.
DUMPFILE definirá el nombre del fichero de exportación.
LOGFILE definirá el fichero de trazas con el detalle de la exportación
1 FULL=Y
Schema mode: Éste es el modo por defecto. Con este modo el usuario podrá especificar uno o varios
esquemas a exportar. Si el usuario desea exportar un esquema distinto del suyo, deberá disponer del
rol EXP_FULL_DATABASE. Para establecer este módo, se indicará en el fichero de propiedades con
el siguiente parámetro:
1 SCHEMAS=esquema01 [, ...]
Table mode: En este caso, se especificará un conjunto de tablas a exportar. Se exportarán tanto las
tablas como sus objetos dependientes: particiones, índices, triggers, constraints, etc. Al igual que en
los otros modos, si se desea exportar tablas de esquemas distintos al del usuario, éste deberá
disponer del rol EXP_FULL_DATABASE. Para especificar las tablas a exportar, estableceremos el
siguiente parámetro en el fichero de configuración:
1 TABLES=[esquema.]tabla[:particion] [, ...]
Todas las tablas deben pertenecer al mismo esquema. Si no se indica el esquema, se tomará por
defecto el del usuario que realiza la exportación.
Oracle permite establecer nombres de tablas con comodines. Sería válido por ejemplo especificar
1 TABLES=tabla%
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 3/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
1 TABLESPACES=tbs01 [,...]
CONTENT: Medienta el parámetro CONTENT podremos especificar si queremos exportar únicamente los
metadatos, los datos o ambas cosas:
VERSION: Con VERSION podremos especificar la versión de oracle que se empleará a la hora de exportar
los objetos. Esto permite realizar una exportación en una base de datos Oracle 11g indicándole una
version=10.0 para luego importar el resultado en una base de datos Oracle 10g. La Versión se establecerá
de la siguiente manera:
donde:
COMPATIBLE: es el valor por defecto. Estableciendo esta versión, se tomará el valor indicado en base
de datos en el parámetro de oracle COMPATIBLE. Para conocer este valor podemos ejecutar la
siguiente query:
LATEST: con esta opción los metadatos se generarán con la versión de la base de datos.
version_string: También se puede establecer directamente el número de versión con que queramos
que sean generados los metadatos.
1 SAMPLE=[[esquema.]tabla:]porcentaje
En caso de no especificarse ninguna tabla, se aplicará el parámetro a todas las tabals exportadas.
REUSE_DUMPFILES: con este parámetro podemos indicar si queremos sobreescribir o no ficheros dmp
anteriores con igual nombre que el indicado en el parámetro DUMPFILE. Por defecto no se reutilizan.
1 REUSE_DUMPFILES={Y|N}
ESTIMATE_ONLY: Si establecemos este parámetro, expdp estimará el espacio que la exportación puede
consumir, pero no realizará la operación de exportación en sí.
1 ESTIMATE_ONLY= { Y | N }
Hay que tener en cuenta que cuando establecemos el parámetro ESTIMATE_ONLY no debemos indicar un
DUMPFILE, ya que no es compatible, ni podemos filtrar los datos a exportar. Por defecto la estimación se
realiza por bloques. Si se quiere basar en estadísticas, habrá que especificar el parámetro
ESTIMATE=statistics
ESTIMATE: mediante este parámetro indicaremos si las estimaciones se han de realizar por bloques o por
estadísticas:
INCLUDE y EXCLUDE:
Mediante estos parámetro podremos establecer los objetos a incluir o excluir de la exportación. Son
parámetros excluyentes, con lo que no pueden emplearse ambos a la vez. Para evitar sorpresas y
conseguir exportar exactamente lo que queremos, debemos tener en mente que expdp siempre exporta
todos los objetos dependientes, de forma que si estamos exportando un índice, también serán incluidas en
la exportación sus estadísticas, o si excluimos una tabla, también estaremos excluyendo sus objetos
Uso de cookies
asociados: índices, particiones, constraints, grants y triggers. De igual forma, si establecemos varios filtros
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de nuestra política de cookies, pinche el enlace para mayor información
ACEPTAR
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 4/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
sobre un mismo objeto de la base de datos, entoneces se aplicarán todos como si estuvieran unidos por el
operador lógico AND.
Los objetos que pueden ser filtrados dependerán del modo de exportación establecido. Podemos ver los
posibles objetos mediante las siguientes queries:
Full Mode:
Schema Mode:
Table Mode:
1 INCLUDE=object_type[:name_clause] [, ... ]
2 EXCLUDE=object_type[:name_clause] [, ... ]
La claúsula name_clause es opcional y permite establecer un filtro mucho más fino permitiendo especificar
objetos del tipo indicado. Irá separada del tipo de objeto por un : y se establecerá con doble comillas, ya
que los objetos irán especificados con comida simple. En la claúsula podremos emplear operadores IN,
LIKE y comodines. Aquí van algunos ejemplos válidos:
1 QUERY='[esquema.][tabla:] "query_clause"''
Si no se especifica tabla, se aplicará la clausula WHERE a todas las tablas. Por ejemplo:
5. Algunos Ejemplos.
Una vez tenemos el modelo de datos y el directorio preparado y hemos revisado el comando, veamos un par de
ejemplos.
1 USERID=demoexp
2 DIRECTORY=dir_demoexp_dmp
3 DUMPFILE=export_demo.dmp
4 LOGFILE=log_export.log
5 SCHEMAS=DEMOEXP
Si quisiéramos
Uso de cookies tomar únicamente la tabla01 (excluyendo la tabla02) y de esa tabla tomar únicamente las tres
primeras filas,
Este sitio web por
utiliza ejemplo,
cookies tendríamos
para que usted tengaque añadir
la mejor los siguientes
experiencia parámetros:
de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de nuestra política de cookies, pinche el enlace para mayor información
ACEPTAR
1 EXCLUDE=TABLE:'' IN ('TABLA02')''
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 5/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
2 QUERY='TABLA01:"WHERE ROWNUM < 4 "'
3 REUSE_DUMPFILES=Y
Establecemos también el parámetro REUSE_DUMPFILES para que no nos dé problemas si existe previamente
el fichero indicado en DUMPFILE. Ejecutando de nuevo el comando
tendremos:
Como se puede ver en las trazas, en este caso únicamente se ha exportado la tabla01 y de las 8 filas que tenía
se han exportado únicamente 3.
Si lo que queremos es estimar el tamaño de la exportación, ejecutaremos el comando con los siguientes
parámetros:
1 USERID=demoexp
2 DIRECTORY=dir_demoexp_dmp
3 LOGFILE=log_export.log
4 SCHEMAS=DEMOEXP
5 VERSION=11.2
6 ESTIMATE_ONLY=Y
1 ESTIMATE=STATISTICS
Para que sea un poco más exacta la estimación, actualizamos las analíticas de las tablas:
Y una vez actualizadas, volvemos a ejecutar el expdp con unos resultados distintos:
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de nuestra política de cookies, pinche el enlace para mayor información
ACEPTAR
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 6/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
Estos los resultados de estimación por estadísticas son mucho superiores que los de estimación por bloque
debido al tamaño tan pequeño de las tablas de prueba. En tablas de mayor tamaño, en entornos productivos,
las estimaciones son más ajustadas
6. Más información.
Exdp dispone de otros parámetros que permiten, entre otras cosas, poder establecer compresión y encriptación,
pero sólo están disponibles en las versiones Enterprise de Oracle. También existe la posibilidad de especificar
varios ficheros de exportación indicando el tamaño máximo de los mismos e incluso realizar la exportación
empleando varios jobs en paralelo. Podéis verlos en detalle en la documentación oficial de Oracle:
http://docs.oracle.com/cd/B28359_01/server.111/b28319/dp_export.htm
Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin
obras derivadas 2.5
Entradas relacionadas
Oracle – Importación de Datos con Data Pump Import [impdp] (febrero 4, 2015)
Respuestas (6)
Felipe Burgos
noviembre 9, 2015 at 9:05 pm · Responder
Carlos
noviembre 13, 2015 at 8:28 pm · Responder
Ruben
Uso de cookies
abril 22, 2016 at 7:40 pm · Responder
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de ¿Se
nuestrapuede
política hacer un pinche
de cookies, selectel con
enlaceun where
para de la primera tabla y solo pasar ese resultado a la
mayor información
ACEPTAR
segunda tabla?. Me refiero a que si solo ocupo cierta informacion de la primera tabla y paso esa
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 7/9
29/3/2018 Oracle – Exportación de Datos con Data Pump Export [expdp] | adictosaltrabajo
Victor
septiembre 26, 2016 at 8:23 pm · Responder
Jackelin
enero 31, 2017 at 6:43 pm · Responder
Puedo utilizar EXPDP e IMPDP con sistemas operativos diferentes. EJ: El expdp esta en Windows y
el IMPDP estaría en SOLARIS?
Oscar
junio 6, 2017 at 11:49 pm · Responder
Hola Carlos,
Estoy intentando realizar un impdp de una base de datos oracle 11g en un equipo que tiene oracle
12c pero me arroja los errores Ora 39000,39001 y 31619. Agradezco su colaboraciòn
Deja un comentario
Enviar comentario
Uso de cookies
Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la
aceptación de nuestra política de cookies, pinche el enlace para mayor información
ACEPTAR
https://www.adictosaltrabajo.com/tutoriales/tutorial-expdp/ 9/9