Exportación e Importación EXP/IMP Oracle

20

description

Exportación e Importación EXP/IMP Oracle. David E. Abril Molina Oracle III Universidad Libre. ¿QUÉ ES UN EXPORT/IMPORT EN ORACLE? - PowerPoint PPT Presentation

Transcript of Exportación e Importación EXP/IMP Oracle

Page 1: Exportación e Importación EXP/IMP Oracle
Page 2: Exportación e Importación EXP/IMP Oracle

¿QUÉ ES UN EXPORT/IMPORT EN ORACLE?

Export/Import es una utilidad de Oracle para realizar backups lógicos de Oracle ( y luego poderlos restaurar ). Esto significa que copian el contenido de la BD pero sin almacenar la posición física de los datos. Para realizar estas operaciones la base de datos tiene que estar abierta.

Para crear el fichero de backup se utiliza la utilidad export y para importar el contenido o recuperar la base de datos se realiza import. Este tipo de backup se utiliza en los siguientes casos:

Para realizar backups de bases de datos ( pequeñas/medianas bases de datos )

Para corregir "Row Migration & Row Chaining"

Detectar alguna corrupción en la base de datos, puesto que al hacer el export se lee toda la bd.

Para "migrar" una base de datos a otro servidor

Page 3: Exportación e Importación EXP/IMP Oracle

Backups Lógicos

Se realizan con la herramienta export que copia los datos y la definición de la BD en un fichero en un formato interno de Oracle.

Para realizar un export la BD debe estár abierta. Export asegura la consistencia en la tabla, aunque no entre tablas. Si se requiere consistencia entre todas las tablas de la BD entonces no se debe realizar ninguna transacción durante el proceso de export. Esto se puede conseguir si se abre la BD en modo RESTRICT.

Page 4: Exportación e Importación EXP/IMP Oracle

Ventajas

Entre las ventajas de efectuar un export están las siguientes:

·Se puede detectar la corrupción en los bloques de datos, ya que el proceso de export fallará.

·Protege de fallos de usuario, por ejemplo si se borra una fila o toda una tabla por error es fácil recuperarla por medio de un import.

·Se puede determinar los datos a exportar con gran flexibilidad.

·Se pueden realizar exports completos, incrementales y acumulativos.

·Los backups relizados con export son portables y sirven como formato de intercambio de datos entre BDs y entre máquinas. Una de las desventajas de realizar backups lógicos con export es que son mucho más lentos que los backups físicos.

Page 5: Exportación e Importación EXP/IMP Oracle

Parámetros de ExportParámetro

Defecto Descripción

USERID indefinido el username/password del usuario que efectua el export.

BUFFER dependiente del SO

El tamaño en bytes del buffer utilizado.

FILE expdat.dmp el nombre del fichero destino.

GRANTS Yes indica si se exportan también los derechos.

INDEXES Yes indica si se exportan también los índices.

ROWS Yes indica si se exportan también las filas de las tablas, o sólo las definiciones de las tablas.

CONSTRAINTS Yes indica si se exportan también las restricciones.

COMPRESS Yes indica si se exporta en modo comprimido.

FULL No indica si se exporta la BD entera.

OWNER usuario actual una lista de usuarios cuyos objetos se quieren exportar.

TABLES indefinido la lista de tablas a exportar.

RECORDLENGTH

dependiente del SO

la longitud en bytes del registro del fichero.

INCTYPE indefinido el tipo de export incremental.

RECORD Yes indica si se anota el export incremental en las tablas SYS.INCVID y en SYS.INCEXP.

PARFILE indefinido el fichero de parámetros.

Parámetros EXP

Page 6: Exportación e Importación EXP/IMP Oracle

Modos de Export

Existen tres modos de realizar una exportación de datos:

Modo Tabla Exporta las definiciones de tabla, los datos, los derechos del propietario, los índices del propietario, las restricciones de la tabla y los disparadores asociados a la tabla.

Modo Usuario Exporta todo lo del modo de Tabla más los clusters, enlaces de BD, vistas, sinónimos privados, secuencias, procedimientos, etc. del usuario.

Modo BD Entera Además de todo lo del modo Usuario, exporta los roles, todos los sinónimos, los privilegios del sistema, las definiciones de los tablespaces, las cuotas en los tablespaces, las definiciones de los segmentos de rollback, las opciones de auditoría del sistema, todos los disparadores y los perfiles. Puede ser dividido en tres casos: Completo, Acumulativo e Incremental.

Estos dos últimos se toman menos tiempo que el completo, y permiten exportar sólo los cámbios en los datos y en las definiciones.

Page 7: Exportación e Importación EXP/IMP Oracle

Completo Exporta todas las tablas de la BD e inicializa la información sobre la exportación incremental de cada tabla. Después de una exportación completa, no se necesitan los ficheros de exportaciones acumulativas e incrementales de la BD anteriores. $ exp userid=system/manager full=y inctype=complete constraints=Yfile=full_export_filename

Acumulativo Exporta solo las tablas que han sido modificadas o creadas desde la última exportación Acumulativa o Completa, y registra los detalles de exportación para cada tabla exportada. Después de una exportación acumulativa, no se necesitan los ficheros de exportaciones incrementales de la BD anteriores. $ exp userid=system/manager full=y inctype=cumulative constraints=Yfile=cumulative_export_filename

Incremental Exporta todas las tablas modificadas o creadas desde la última exportación Incremental, Acumulativa o Completa, y registra los detalles de exportación para cada tabla exportada. Son interesantes en entornos en los que muchas tablas permanecen estáticas por periodos largos de tiempo, mientras que otras varían y necesitan ser copiadas. Este tipo de exportación es útil cuando hay que recuperar rápidamente una tabla borrada por accidente. $ exp userid=system/manager full=y inctype=incremental constraints=Yfile=incremental_export_filename

Page 8: Exportación e Importación EXP/IMP Oracle

La política de exportación puede ser la siguiente:Realizar una exportación completa el día 1 (por ejemplo el domingo), y luego realizar exportaciones incrementales el resto de la semana. De este modo de lunes a sábado sólo se exportarán aquellas tablas exportadas, ahorrando tiempo en el proceso.

Page 9: Exportación e Importación EXP/IMP Oracle
Page 10: Exportación e Importación EXP/IMP Oracle
Page 11: Exportación e Importación EXP/IMP Oracle

Recuperación Lógica

Oracle dispone de la herramienta import para restaurar los datos de una BD a partir de los ficheros resultados de un export. Import lee los datos de los ficheros de exportación y ejecuta las sentencias que almacenan creando las tablas y llenándolas de datos.

Page 12: Exportación e Importación EXP/IMP Oracle

Parámetro Defecto Descripción USERID indefinido el username/password del usuario que efectua el import.

BUFFERdependiente del SO

El tamaño en bytes del buffer utilizado.

FILE expdat.dmp el nombre del fichero de exportación a importar.

SHOW No indica si se muestran los contenidos del fichero de exportación, sin importar ningún dato.

IGNORE Yes indica si ignorar los errores producidos al importar un objeto que ya existe en la BD.

GRANTS Yes indica si se importan también los derechos.INDEXES Yes indica si se importan también los índices.ROWS Yes indica si se importan también las filas de las tablas.FULL No indica si se importan el fichero entero.FROMUSER

Indefinido una lista de los usuarios cuyos objetos se han exportado.

TOUSER Indefinido una lista de los usuarios a cuyo nombre se importan los objetos.TABLES indefinido la lista de tablas a importar.INCTYPE indefinido el tipo de import incremental (SYSTEM o RESTORE).

COMMIT Noindica si se efectua un commit después de importar cada fila. Por defecto, import efectua un commit después de cargar cada tabla.

Parámetros del Import

Page 13: Exportación e Importación EXP/IMP Oracle

Para importar un export incremental se puede efectuar la siguiente secuencia de pasos:1.Utilizar la copia más reciente del import para restaurar las definiciones del sistema: $ imp userid=sys/passwd inctype=system full=Y file=export_filename

2. Poner los segmentos de rollback online. 3. Importar el fichero de exportación completa más reciente: $ imp userid=sys/passwd inctype=restore full=Y file=filename

4. Importar los ficheros de exportación en modo acumulación desde la exportación completa más reciente, en orden cronológico: $ imp userid=sys/passwd inctype=restore full=Y file=filename

5. Importar los ficheros de exportación en modo incremental desde la exportación completa o acumulativa más reciente, en orden cronológico: $ imp userid=sys/passwd inctype=restore full=Y file=filename

Page 14: Exportación e Importación EXP/IMP Oracle

Oracle Data Pump in Oracle Database 10g

Oracle Data Pump es una nueva, alternativa más rápida y más flexible a la "exp" y los servicios públicos "demons" que se utiliza en las versiones anteriores de Oracle.

Además de la importación de base de datos y la funcionalidad de exportación de la bomba proporciona un PL / SQL API y el apoyo a las tablas externas.

Page 15: Exportación e Importación EXP/IMP Oracle

Diferencia entre EXP y EXPDP 10g

Hay muchas diferencias entre el utilitario convencional EXP y el nuevo utilitario EXPDP. Primero que todo aclaramos, que ambos utilitarios conviven en la versión 10g.El EXPDP es parte de el "DATA PUMP UTILITY", y sirve para exportar información de la base de datos. El IMPDP hace la función contraría y la equivalente al clásico IMP. El DATA PUMP es un componente de software que cuenta con interface de línea de comandos, archivo de parámetros, línea interactiva y adicionalmente se le puede hallar dentro del Database Control ( Herramienta Web Administrativa de la base de datos ).

Page 16: Exportación e Importación EXP/IMP Oracle

El DATA PUMP EXPORT e IMPORT pueden:•Generar un respaldo ó importación total de la base de datos ( FULL )•Trabajar a nivel de esquema•A nivel de tabla•Tablespaces•Tablespaces transportable

EXPDP cuenta con un grupo de cláusulas que permite tener un mayor control, sobre lo que queremos exportar. Nos permite a través de la clausula EXCLUDE por ejemplo, indicarle que no exporte un conjunto de objetos. Por ejemplo EXCLUDE=PACKAGE , no exportaría los paquetes del esquema o la base de datos que estamos importando. Otro ejemplo EXCLUDE=TABLE:"LIKE '%TMP%'", no exportaría las tablas que cumplan con contengan las letras "TMP". La clausula INCLUDE, me permite indicarle que incluya sólo aquel grupo de objetos que cumplan con una condición dada. INCLUDE= tipo_objeto[:"expresión"].La clausula CONTENT, establece que tipo de contenido deseo exportar ALL, METADATA_ONLY, DATA_ONLY.

Page 17: Exportación e Importación EXP/IMP Oracle

Primeros pasos

Se debe desbloquear la cuenta sobre la cual vamos hacer la exportación por ejemplo la cuenta de Scott y crear un directorio de objetos que pueden acceder. El objeto de la guía es sólo un puntero a un directorio físico, creando en realidad no crea el directorio físico en el sistema de archivos.

SQL:CONN sys/password@db10g AS SYSDBAALTER USER scott IDENTIFIED BY tiger ACCOUNT UNLOCK;GRANT CREATE ANY DIRECTORY TO scott;CREATE OR REPLACE DIRECTORY test_dir AS '/u01/app/oracle/oradata/';GRANT READ, WRITE ON DIRECTORY test_dir TO scott;

Page 18: Exportación e Importación EXP/IMP Oracle

Exportaciones / Importaciones Por tablas:SQL:expdp scott/tiger@db10g tables=EMP,DEPT directory=TEST_DIR dumpfile=EMP_DEPT.dmp logfile=expdpEMP_DEPT.log impdp scott/tiger@db10g tables=EMP,DEPT directory=TEST_DIR dumpfile=EMP_DEPT.dmp logfile=impdpEMP_DEPT.log

Por schemas:SQL:expdp scott/tiger@db10g schemas=SCOTT directory=TEST_DIR dumpfile=SCOTT.dmp logfile=expdpSCOTT.logimpdp scott/tiger@db10g schemas=SCOTT directory=TEST_DIR dumpfile=SCOTT.dmp logfile=impdpSCOTT.log

Base de datos completaSQL:expdp system/password@db10g full=Y directory=TEST_DIR dumpfile=DB10G.dmp logfile=expdpDB10G.logimpdp system/password@db10g full=Y directory=TEST_DIR dumpfile=DB10G.dmp logfile=impdpDB10G.logCon la opción: full=Y, nos estamos llevando un respaldo completo d ella base de datos.

Page 19: Exportación e Importación EXP/IMP Oracle
Page 20: Exportación e Importación EXP/IMP Oracle

http://www.infor.uva.es/~jvegas/cursos/bd/oraback/oraback.html

http://www.orasite.com/tutoriales/export-import-oracle-9i.html

Infografía