Comunidad Oracle Hispana

Oracle, importar respaldo dmp de base de datos

Después de algún tiempo de ausentarme, he vuelto con muchas ganas de compartir varios artículos que tengo almacenados y listos para publicar.

En esta ocasión voy a compartir el procedimiento para importar un respaldo en oracle 10g a partir de un archivo dmp previamente exportado desde la utilidad que oracle posee para obtener respaldos completos de una base de datos.

Para ello primero debe instalar oracle 10g en su maquina, como este no es el tema de este articulo no vamos a mostrar el proceso de instalación, lo que si es importante mencionar los siguientes tips:

  • Es importante si se está realizando una instalación bajar el firewall, si se trata de windows 7 primero debemos configurar y conectar a la red el equipo donde pretendemos instalar oracle, luego podemos ubicarnos en el panel de control e inhabilitar los mensajes de advertencia de ejecución de aplicaciones que viene por defecto en el SO.
  • Es recomendable que mientras dure la instalación y mientras instalamos toad el ordenador esté conectado a la red puede suceder que debido a que no se reconoce ninguna entrada ni salida a través de la red, el servicio de oracle no se inicie correctamente.


Para importar la base de datos completa

Primero debemos instalar Oracle 10g, por ejemplo podemos usar el SID o identificador único del servicio de Oracle siguiente: UTNDB

A continuación el primer paso una vez instalado oracle 10g, es crear el tablespace, un tablespace es una unidad lógica de almacenamiento dentro de una base de datos oracle, es un puente entre el sistema de ficheros del sistema operativo y la base de datos, cada tablespace se compone de, al menos, un datafile y un datafile solo puede pertenecer a un tablespace, cada tabla o indice de oracle pertenece a un tablespace, es decir cuando se crea una tabla o indice se crea en un tablespace determinado.

Para crear un tablespace podemos usar sqlplus que viene por defecto en la instalación, para ello debemos ingresar a la bdd con el usuario system allí debemos crear el tablespace llamado ACADEMICO ejecutando el siguiente código a través sqlplus:


SQL> CREATE TABLESPACE ACADEMICO DATAFILE 'C:\oracle\product\10.2.0\oradata\utndb\ACADEMICO01.DBF' SIZE 640M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
LOGGING
ONLINE
PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
BLOCKSIZE 8K
SEGMENT SPACE MANAGEMENT AUTO
FLASHBACK ON;

Luego creamos el usuario sobre utndb dentro del tablespace ACADEMICO con los siguientes permisos:


GRANT SELECT ON DBA_USERS TO UTNDB WITH GRANT OPTION;
GRANT DROP USER TO UTNDB;
GRANT ALTER USER TO UTNDB;
GRANT CREATE USER TO UTNDB;

Las anteriores lineas indican que el usuario utndb tendrá acceso a la vista DBA_USERS del usuario sys, pues en mi caso varios procedimientos de nuestra aplicación se hace referencia y uso de esta vista. Con lo anteriormente explicado procedemos a crear el usuario UTNDB para ello debemos autentificarnos como usuarios sys haciendo uso de las siguiente lineas:


SQL> connect system/password as sysdba;
SQL> CREATE USER UTNDB
IDENTIFIED BY VALUES '5C03C3EA63CDEC90'
DEFAULT TABLESPACE ACADEMICO
TEMPORARY TABLESPACE TEMP
PROFILE DEFAULT
ACCOUNT UNLOCK;
-- 4 Roles for UTNDB
GRANT SELECT_CATALOG_ROLE TO UTNDB;
GRANT MGMT_USER TO UTNDB;
GRANT DBA TO UTNDB WITH ADMIN OPTION;
GRANT AQ_ADMINISTRATOR_ROLE TO UTNDB WITH ADMIN OPTION;
ALTER USER UTNDB DEFAULT ROLE MGMT_USER, DBA, AQ_ADMINISTRATOR_ROLE;
-- 8 System Privileges for UTNDB
GRANT GLOBAL QUERY REWRITE TO UTNDB;
GRANT SELECT ANY TABLE TO UTNDB;
GRANT CREATE TABLE TO UTNDB;
GRANT DROP USER TO UTNDB;
GRANT ALTER USER TO UTNDB;
GRANT UNLIMITED TABLESPACE TO UTNDB WITH ADMIN OPTION;
GRANT CREATE USER TO UTNDB;
GRANT CREATE MATERIALIZED VIEW TO UTNDB;
-- 1 Object Privilege for UTNDB
GRANT INSERT, SELECT, UPDATE ON SYS.DBA_USERS TO UTNDB WITH GRANT OPTION;

Como explique anteriormente nuestra instalación va a proceder a partir de un respaldo de la base de datos, debemos disponer de un respaldo, para importar el respaldo de la bdd a nuestro servidor de base de datos actual debemos abrir una consola (en windows ejecutamos cmd en la opcion ejecutar del inicio de windows) y procedemos a importar el dmp usando el siguiente código:


C:\>imp system/fenix file=UTNDBREDEMPLEOS.DMP fromuser=utndb touser=utndb

Esto importara el respaldo de la base de datos en el usuario utndb que acabamos de crear. Esto es útil cuando nuestra intención es instalar un respaldo completo que incluya indices, claves foraneas, tablas con campos blob, secuencias...etc en Oracle

 

Para mas detalles y conocer más acerca del framework Oracle ADF visiten mi blog rickymax.wordpress.com

 

Entrada original en: http://rickymax.wordpress.com/2012/01/27/oracle-importar-respaldo-d...

 

Saludos desde Ecuador

Visitas: 13901

Comentario

¡Tienes que ser miembro de Comunidad Oracle Hispana para agregar comentarios!

Participar en Comunidad Oracle Hispana

© 2017   Creado por Fernando Garcia.   Tecnología de

Insignias  |  Informar un problema  |  Términos de servicio