Export Oracle 10g con datapump

E-mail Imprimir PDF

En este documento se expone un ejemplo de cómo poder hacer un export en oracle 10g mediante la utilidad datapump.

 

1. DataPump

La utilidad DataPump es la que ORACLE10g utiliza para realizar los exports. (expdp). Para poder hacer uso de esta utilidad hay que especificar el directorio que va a ser utilizado por ORACLE10g Export/Import (impdp) para poder exportar e importar los datos.

Existen diversas formas de especificar este directorio, una de las formas que se puede utilizar es la siguiente:

SQL > CONNECT system/manager
-- creamos el mapeo del directorio export a /backup/database/BBDD/orasite
SQL > CREATE OR REPLACE DIRECTORY export as ‘/’backup/database/BBDD/orasite’;
-- creamos el mapeo del directorio export a /backup/database/BBDD/orasite/log
SQL > CREATE OR REPLACE DIRECTORY log as ‘/backup/database/BBDD/orasite/log’;
-- otorgamos permisos lectura, escritura a esos directorios
SQL > GRANT read,write ON DIRECTORY export TO system;
SQL > GRANT read, write ON DIRECTORY log TO system;


En este caso es system el usuario encargado de hacer el export, por eso se le otorgan los privilegios a el

NOTA:

Directory: Este parámetro especifica la localización en la cual Export DataPump or Import DataPump pueden escribir el “dump file”, “log file”, “SQL file”

Si queremos ver los directorios disponibles podemos utilizar dicha consulta

SQL >SELECT privilege,directory_name 
FROM user_tab_privs t, all_directories d
WHERE t.table_name(+)=d.directory_name ORDER BY 2,1;

Los permisos de lectura y escritura en un directorio sólo significa que la base de datos ORACLE deberá leer o escribir el fichero en esa ubicación.

 

2. EXPDP

Dando los permisos ( anteriormente vistos ) a los directorios en los que se van a generar el backup ( export ) podemos realizar un export completo de la base de datos de la siguiente forma

$ expdp system/manager DUMPFILE=export:orasite.dmp FULL=Y LOGFILE=log:orasite.log

 

Aclaraciones del export:

Realizamos el export con el usuario system (system/manager)
Ponemos el nombre del fichero mediante DUMPFILE indicándole el directorio que hemos creado y dado permisos para el efecto. (export)
Indicamos el nombre del fichero log mediante LOGFILE indicándole el directorio creado para ubicar estos archivos ( log )

Última actualización el Jueves, 09 de Diciembre de 2010 19:03  

Comentarios  

 
+1 #1 Anónimo 09-03-2007 20:22
Si quisiera hacer un export de solo algunas tablas. ¿ Cómo lo haría?
 
 
+1 #2 Anónimo 12-03-2007 16:58
En vez de poner FULL=Y ( que significa que haremos un export completo de toda la base de datos ) tenemos que sustituirlo por

tables=EMP,DEPT ( siendo emp y dept las tablas que queremos exportar ).

 
 
-1 #3 Anónimo 03-04-2007 23:54
y si tuviese que hacer un export desde un oracle 10g corriendo en linux? cómo variarían los comandos?
 
 
-1 #4 Douglas 09-04-2007 23:47
Como hacemos para importar un archivo exportado en el oracle 10g en un oracle 9i
 
 
-1 #5 Anónimo 18-05-2007 23:44
diste el ejemplo de solo exporrtar unas tablas o la base de datos completo, y para exportar otras cosas distintas? cuales son los comandos?
 
 
0 #6 Luis Carranza 07-12-2007 01:27
Como se exporta un solo esquema?
 
 
+1 #7 GJ 03-01-2008 17:30
Para importar un solo esquema lo que tienes que hacer es esto: (ojo que esto es solo para backups logicos)

$imp system/password file= fromuser= touser= buffer=10000.

Por ejemplo si quieres importar solo el esquema HR seria asi:

$imp system/password file=backup20071231.dmp fromuser=HR touser=HR buffer=1000

Espero te sirva.

GJ
 
 
-1 #8 Claudia 10-06-2008 16:32
No vi la respuesta de como importar un backup en 9i si fue exportado en 10g
 
 
+1 #9 Diego 09-10-2008 05:46
Buenas a todos, alguno me podria ayudar tengo que exportar datos de una base de datos en oracle a un fichero .txt para luego utilizar en sap?

Un Saludo y gracias.
 
 
0 #10 BMI 17-10-2008 01:24
Muy buenas, Diego. Yo no utilizo la 10g, pero ¿Por qué no utilizar un unload, y no un export? Un saludo.
 
 
0 #11 George 17-12-2008 15:57
Compañeros necesito realizar el unload de un select en ORACLE9i, pero no tengo la sintaxis correcta, la verdad manejo mas sql pero no me funciono la sintasix

unload to "/tmp/tablas.txt

select table_name ,owner from all_tables

Me podrian indicar como hacerlo en ORACLE.

Mil gracias.
 
 
0 #12 jaime 19-02-2009 05:37
Hola. He instalado el oracle10g e intento exportar 1 tabla y trato de hacer uso del comando exp través del sql +; pero obtengo un error

SP2-0042: comando desconocido "exp" - resto de la línea ignorado

Alguien me puede decir que no reconoce el comando y como solucionarlo?

Tambien intente hacerlo x la interfaz web y me pide que ingrese en Credenciales de Host, un Usuario y su Contraseña ; pero pongo system y su clave pero em da error de clave.... es raro porque con ese loguin y esa clave estoy logueado en la aplicacion?

Saludos



 
 
+2 #13 Alberto 06-05-2009 13:43
RE: Export Oracle 10g

Hola. He instalado el oracle10g e intento exportar 1 tabla y trato de hacer uso del comando exp través del sql +; pero obtengo un error

SP2-0042: comando desconocido "exp" - resto de la línea ignorado

Alguien me puede decir que no reconoce el comando y como solucionarlo?

Tambien intente hacerlo x la interfaz web y me pide que ingrese en Credenciales de Host, un Usuario y su Contraseña ; pero pongo system y su clave pero em da error de clave.... es raro porque con ese loguin y esa clave estoy logueado en la aplicacion?

Saludos

------------------------------------

Tienes instaldo el cliente Oracle?
 
 
0 #14 Virignia 25-06-2009 15:24
Albeto prueba poniendo el signo $ antes de exp. Así lo probé , así aparentemente me funciona. Te doy un ejemplo:

sql> $exp file=mi_back.dmp log=mi_log.log full=y

o bien aprovecha, prueba mientras aprovechas de leer la ayuda:

sql> $exp help=yes

Espero te sirva. Saludos. Virginia.
 
 
0 #15 Mauricio 25-08-2009 13:51
Estoy tratando de que el export datapump de la base de datos sol que esta en la maquina A pueda ser generado en la máquina B, no he sido capaz ya que veo que todo se configura local. Gracias.
 
 
+2 #16 gm 23-09-2009 16:44
Hola:

Mi comentario es si el expdp y impdp tiene mucho mejor perfornance que el exp/imp original, ademas de que si hay un documento con las equivalencias o comparaciones de que hacen los parametros del expdp/impdp con los parametros del exp/imp original.

Por ejemplo en el import original los parametros fromuser y touser, cuales seria el equivalente en el import data pump.

Saludos.
 
 
0 #17 Oraclito 07-10-2009 08:57
Quiero saber si se puede hacer un export desde una fecha determinada en adelante o utilizar rangos de fechas, desde hasta
 
 
0 #18 wale<3 21-05-2010 21:14
ala esto me ayudo =D me dio problema con el .log decia que el archivo no se podia abrir =s asi que omiti esa parte xD pero esta muy bueno eso que pusiste
 
 
0 #19 anonimus 08-07-2010 17:54
Yo son nuevo en oracle 10g

pero tengo algunas preguntas??

-este esport es mejor que el por convencional

-y como se raliza el import
 
 
0 #20 marcelom940@gmail.com 09-08-2010 15:01
buena las ayudas, pero necesito hacer lo contrario, esportar un usuario completo menos 2 tablas de todo el equema, sin individualizar tooodas las tablas del usuario..

saludos y muchas gracias
 
 
0 #21 mau 13-09-2010 08:45
¿que permisos necesita un usuario para exportar todas las tablas de otro usuario?
 
 
0 #22 IVAN 26-10-2010 06:33
Consulta:

¿Es necesario que ningun ususrio este accesando la base de datos Oracle en el mometo de realizar el expdp?
 
 
0 #23 Jen 17-10-2012 11:30
hola,
si no tengo espacio en disco para hacer un expdp y necesito realizarlo en otra maquina, ¿podría crear el directorio en otra maquina e indicar que se haga en esta ubicación?

gracias
 

Haz login para dejar un comentario. Puedes hacer login con tu cuenta de:


Haz login con tu cuenta orasite

Haz login con tu cuenta de:

Errores Oracle más comunes