Lab7 Oracle

LABORATORIO 9. Replicación de base de datos en Oracle GUÍA DE LABORATORIO Nº 9 Actividad de Proyecto No. 11: ESTABLECER

Views 187 Downloads 3 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

LABORATORIO 9. Replicación de base de datos en Oracle

GUÍA DE LABORATORIO Nº 9 Actividad de Proyecto No. 11: ESTABLECER PLANES DE SINCRONIZACIÓN PARA BASE DE DATOS Y OBJETOS DISTRIBUIDOS.

FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Estructura de contenidos. 1. Introducción..............................................................................3 2. Objetivos...................................................................................4 3. Consideraciones.........................................................................5 4. Procedimiento............................................................................6 4.1. Configuración de las 2 maquinas virtuales en red....................6 4.2. Aspectos generales de la replicación de la base de datos de la Secretaria de Salud de la alcaldía de San Antonio del SENA, configuración en el servidor........................................................6 4.2.1. Configurar el DATABASE LINK del sistema destino (esclavo) para que reciba datos del sistema primario..........7 4.2.2. Crear un view_log materializado desde la tabla origen que se encuentra dentro de la Base de Datos Origen.......... 17 4.2.3. Crear una vista materializada sobre la base de datos destino.......................................................................... 18 5. Evidencias a entregar................................................................20

2 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

1. Introducción. La replicación de una o varias bases de datos, sirve para poder distribuir los datos en diferentes ubicaciones, bien sea a través de la red local, conexión de acceso telefónico, inalámbricas o internet, permitiendo hacer una copia de la base de datos en otra ubicación física, para luego sincronizar sin perder la coherencia de la información. Los SMBD ofrecen un sistema eficaz para la sincronización de datos en toda la empresa, proporcionando los servicios adecuados para garantizar su disponibilidad, optimización en el almacenamiento de datos, seguridad integración de datos en diferentes sitios, permitiendo que estas copias puedan ser utilizadas en diferentes entornos. En este laboratorio se realizarán actividades relacionadas con una de las estrategias en la distribución de datos: la réplica de bases de datos, revisando aspectos como la configuración y proceso a realizar en cada SMBD.

3 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

2. Objetivos. Objetivo General. Realizar la replicación de la base de datos de la Secretaria de Salud de la alcaldía de San Antonio del SENA utilizando DATABASE LINK y Vistas Materializadas, teniendo un servidor como maestro y otro como esclavo. Objetivos Específicos. • Configurar la red de entre 2 maquinas virtuales, de las cuáles 1 tiene características de servidor maestro y la otra tiene características de servidor esclavo. • Comprender los conceptos de DATABASE LINK y de las Vistas Materializadas en ORACLE aplicados a replicación de datos. • Identificar los pasos necesarios para realizar la replicación de datos a través DATABASE LINK y de vistas materializadas. • Realizar la replicación de las tablas de la Base de Datos de la secretaría de salud de San Antonio del SENA.

4 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

3. Consideraciones. Antes de realizar los procedimientos planteados en este laboratorio, se sugiere revisar los siguientes aspectos: Ítem Soporte Teórico

Descripción Previo al desarrollo de este laboratorio debe haber revisado: • Replicación en Bases de Datos ORACLE. • Conceptos sobre DATABASE Link. • Vistas Materializadas. • Material complementario de replicaciones de base de datos ORACLE 10g R2.

Productos requeridos

• Configuración de las 2 maquinas virtuales en red. • Base de datos de la Secretaria de Salud de la alcaldía de San Antonio del SENA. • Procedimiento – Replicación de base de datos en ORACLE 10g R2.

Herramientas SW

Se requiere tener instalada y configurada las 2 Máquinas virtuales en red. Instalación de ORACLE 10g R2 en todas las maquinas virtuales.

5 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

4. Procedimiento. El laboratorio está compuesto por dos partes que permiten abordar el tema de la replicación de la base de datos de la Secretaria de Salud de la alcaldía de San Antonio del SENA. La primera parte está compuesto por la configuración de las maquinas virtuales, para que se puedan comunicar entre sí. La segunda parte corresponde a la configuración del servidor de la base de datos para luego poder replicarlas teniendo a una de ellas como maestro, y teniendo la otra base de datos como esclavo, trabajando con DATABASE LINK y con VISTAS MATERIALIZADAS. A continuación se describen las acciones que se deben desarrollar como parte de este laboratorio: 4.1. Configuración de las 2 maquinas virtuales en red. Revisar el Manual para crear una red con VirtualBox instrucciones allí dadas.

y ejecutar las

4.2. Aspectos generales de la replicación de la base de datos de la Secretaria de Salud de la alcaldía de San Antonio del SENA, configuración en el servidor. Para realizar adecuadamente la replicación debemos realizar 3 grandes pasos según se sigue: • Primero debemos configurar el DATABASE LINK del sistema destino (esclavo) para que reciba datos del sistema primario. • Crear un view_log materializado desde la tabla origen que se encuentra dentro de la Base de Datos Origen. • Crear una vista materializada sobre la base de datos destino que seleccione todos los datos de la tabla remota y colocarla en modo “fast refreshable” de manera que y configurarla de manera que hagamos la actualización cada 5 minutos. A continuación se realiza el desglose de estas actividades:

6 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

4.2.1. Configurar el DATABASE LINK del sistema destino (esclavo) para que reciba datos del sistema primario. Inicialmente debemos ubicarnos en la máquina esclavo y debemos generar el archivo tnsnames.ora que es aquel archivo que me permite realizar conexiones a otros servidores ORACLE. Para ello haremos uso nuevamente del NETCA (Network Configuration Assistant) que se encuentra ubicado en Inicio – Oracle 10g_home2 – Configuration and Migration Tools – Net Configuration Assistant.

Imagen 1. Acceso a las Herramientas de Configuración

Iniciamos entonces el Net Configuration Assistant y elegimos la opción Nro. 2. Configuración de los Métodos de Nomenclatura (esta opción nos permitirá configurar los tnsnames) como se muestra en la siguiente imagen:

7 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Imagen 2. Configuración de Métodos de Nomenclatura

Ahora hacemos clic en siguiente y llegamos al siguiente pantallazo:

Imagen 3. Métodos de Nomenclatura

Podemos entonces ahora elegir el Método de nomenclatura disponible. Vamos a elegir Local ya que el tnsnames.ora estará ubicado localmente y allí se depositarán las configuraciones necesarias para la conexión con el servidor maestro que será el objeto de replicación. Para elegirlo lo seleccionamos y hacemos clic en la flecha >: para que aparezca en la casilla siguiente Luego hacemos clic en siguiente donde observaremos la siguiente opción, donde nos confirma que hemos configurado los métodos de nomenclatura.

8 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Imagen 4. Finalización del Proceso

Hacemos clic en siguiente y luego en terminar para salir del pantallazo. Ahora ya se ha configurado la opción de métodos de nomenclatura, y debemos por tanto realizar la configuración de las Bases de Datos que se encuentran en otros servidores. Vamos a realizarlo con la herramienta NetManager. Para ingresar al NetManager debemos ingresar a Inicio – Oracle 10g_ home2 – Configuration and Migration Tools – Net Manager

Imagen 5. Acceso al Net Manager

9 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Al hacer clic deberíamos observar el siguiente pantallazo:

Imagen 6. Configuración de Red

Ahora desplegamos la opción local, ingresamos a la opción Nomenclatura de Servicios, y después hacemos clic en el más que se encuentra en la zona izquierda. Después de esto debemos llegar a una opción como la que se muestra:

Imagen 7. Asistente de Nombre de Servicio de Red

Elijamos un nombre, que recordemos ya que lo usaremos para el resto de nuestro laboratorio. Recomendamos colocar a este servicio DBMASTER. Entonces digitamos DBMASTER y hacemos clic en siguiente, llegando a la siguiente opción donde debemos elegir el protocolo TCP/IP y hacemos clic en siguiente como se muestra en la siguiente imagen:

10 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Imagen 8. Selección del protocolo.

Hemos elegido este protocolo que servirá de conexión entre nuestro servidor instalado en este equipo que hemos denominado esclavo y el servidor maestro de replicación.

Imagen 9. Valores del Protocolo

Ahora aparece de la imagen anterior, donde definimos el nombre del Host. Podemos decidir si colocar la dirección IP, o el nombre del equipo (servidor1 o servidor2 de acuerdo a la configuración que elegimos cuando construimos las 2 máquinas virtuales). Dejamos configurado el puerto 1521 que es el puerto por defecto de ORACLE, y hacemos clic en siguiente. Luego colocamos en el nombre de servicio (posterior a 8i) el nombre del servicio, que de acuerdo a los laboratorios realizados en ocasiones anteriores corresponde a ORACLE. Entonces digitamos ORACLE en el nombre del servicio, como se muestra en la siguiente figura:

11 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Imagen 10. Identificación del Servicio

Hacemos ahora clic en siguiente: Luego clic en probar, (saldrá un error de “La cuenta está bloqueada” pero lo ignoramos) y luego en probar conexión. Elegimos como usuario SYSTEM y como clave SENA y volvemos a probar. Deberá aparecernos un mensaje de confirmación de conexión exitosa según como se sigue

Imagen 11. Prueba de Conexión

Bien ya se ha configurado el servicio de nomenclatura que se ve reflejado en el tnsnames.ora. Al dar clic en cerrar y luego en terminar debemos llegar al siguiente pantallazo que nos muestra como quedo finalmente nuestro servicio. Luego cerramos y guardamos los cambios.

12 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Imagen 12. Configuración de Direcciones Como verificación adicional debemos realizar una comprobación adicional para ello hacemos clic en Inicio-Ejecutar-Cmd. Luego digitamos la instrucción tnsping DBMASTER y debemos obtener conexión exitosa.

Imagen 13. Verificación de la conexión

Ahora pasamos a configurar el DATABASE LINK, en la máquina esclavo. (en la que estamos actualmente). Para ello se abre el SQLDeveloper que para este caso, recordemos se encuentra instalada en nuestras máquinas virtuales en la siguiente ruta: C:\sqldeveloper Y lanzamos el aplicativo.

13 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Debemos recordar, vamos a conectar con el usuario: salud contraseña: SENA. Luego abrimos el generador de consultas y después de ello aparecerá la siguiente pantalla:

Imagen 14. Conexión en el SQLDeveloper

Ahora, dentro del generador de consultas, estando dentro del usuario salud, deberemos digitar la instrucción SQL para crear el DATABASE LINK. (Dentro del generador de consultas). Teniendo en cuenta la siguiente sintaxis: CREATE DATABASE LINK [NOMBRE] CONNECT TO [USUARIO] IDENTIFIED BY [CONTRASEÑA] USING [cadena de conexión] Donde: [NOMBRE ]

:

Es el nombre del link simbólico

[USUARIO ]

:

Nombre del usuario remoto en la BD

[CONTRASEÑA] :

Contraseña del usuario

[USING] :

es la cadena de conexión que debemos utilizar para acceder a nuestro servidor.

Para saber que cadena que cadena es la que debemos usar en [USING] debemos ir al archivo tnsnames.ora que fue generado en la siguiente ruta: “C:\oracle\product\10.1.0\db_2\NETWORK\ADMIN”

14 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Hacemos doble clic sobre el y lo abrimos usando el bloc de notas. Nos encontramos con la siguiente imagen:

Imagen 15. Archivo TSNames

La parte subrayada es la cadena de conexión que debemos utilizar para crear nuestro DBLINK. Por tanto la instrucción SQL que debemos ejecutar en el editor de consultas sería así: CREATE DATABASE LINK DB CONNECT TO SALUD IDENTIFIED BY SENA USING ‘ (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = Servidor1)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = ORACLE) ) )’

Imagen 16. Texto a ejecutar en SQLDeveloper Imagen 16. Texto a ejecutar en SQLDeveloper

15 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Imagen 16. Texto a ejecutar en SQLDeveloper

Para probar si nuestra configuración fue correcta ejecutamos la siguiente consulta: SELECT * FROM EPS@DB Deberíamos obtener los siguientes resultados:

Imagen 17. Prueba de Configuración

Aquí comprobamos que el DBLINK ha sido un éxito.

16 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

4.2.2. Crear un view_log materializado desde la tabla origen que se encuentra dentro de la Base de Datos Origen. Ahora debemos ir al servidor maestro que servirá como fuente de datos a nuestro servidor esclavo. Se hace claridad que la tabla de replicación (vista materializada) se trabajará desde el usuario SALUD. Este View log permite preparar a ORACLE el manejar los view_log (parámetros de vista) Abrimos el SQLDeveloper que se encuentra en el servidor, entramos al generador de consultas y ejecutamos la siguiente instrucción SQL: CREATE MATERIALIZED VIEW LOG ON EPS WITH PRIMARY KEY INCLUDING NEW VALUES;

De esta manera estamos indicando que vamos a realizar la replicación sobre la tabla salud.EPS y el materialized view log estará sobre el esquema salud. Debemos tener entonces un mensaje al ejecutar la consulta mencionándonos que el proceso ha sido ejecutado con éxito.

Imagen 18. Creación de la vista materializada

Ahora procedemos a crear la vista materializada en el servidor esclavo.

17 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

4.2.3. Crear una vista materializada sobre la base de datos destino. Crear una vista materializada sobre la base de datos destino que seleccione todos los datos de la tabla remota y colocarla en modo “fast refreshable” de manera que y configurarla de manera que hagamos la actualización cada 5 minutos. Ahora debemos ir nuevamente al servidor esclavo (quien recibirá la réplica) abrimos el sqldeveloper y ejecutamos la siguiente instrucción sql (recordar que en este debemos estar conectados como usuario salud). CREATE MATERIALIZED VIEW salud_replicada REFRESH FAST START WITH sysdate + 5/(24*60) NEXT sysdate + 5/(24*60) AS SELECT * FROM EPS@DB

Mediante esta sentencia, la actualización de replicación es de 5 minutos, si queremos aumentar o disminuir el tiempo, cambiamos el valor que se encuentra en la parte superior.

Imagen 19. Vista Materializada en el servidor esclavo

Se evidencia entonces que se ha creado una vista materializada que representa la tabla EPS que se encuentra en el servidor maestro.

18 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

Hagamos clic entonces en vistas materializadas y observamos que se encuentra creada, y hacemos doble clic para ver su contenido.

Imagen 20. Contenido de la Vista

Probemos ahora insertar un dato en la tabla EPS en la tabla servidor y vemos si la vista materializada se actualiza en el intervalo especificado (5 minutos). De esta manera hemos realizado la replicación de datos de un servidor ORACLE a otra instancia ORACLE.

19 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje

Replicación de base de datos en Oracle

5. Evidencias a entregar. • Vídeo tutorial en donde se evidencie la replicación de la base de datos de la Secretaria de Salud, utilizando la maquina anfitrión y dos máquinas virtuales como parte de un mismo clúster. En el clúster de replicación una de las máquinas estará configurada como nodo maestro (lectura y escritura y dos más como nodos esclavos (solo lectura). El videotutorial debe propender en tener un tamaño inferior a 100 MB a efectos de enviar el archivo resultante a través de herramientas dispuestas en la Web.

20 FAVA - Formación en Ambientes Virtuales de Aprendizaje

SENA - Servicio Nacional de Aprendizaje