Sei sulla pagina 1di 27

TALLER I

Facultad de Ciencias Informáticas 6to. Nivel “A”

UNIVERSIDAD LAICA ELOY ALFARO DE MANABÍ


FACULTAD DE CIENCIAS INFORMÁTICAS
SEXTO NIVEL “A”

BASE DE DATOS DIATRIBUIDAS

INFORME TALLER II
Desarrollar proyecto de integración de servicios de datos ETL, utilizando
Sistemas operativos Linux Centos como servidor y Ubuntu como cliente, con
gestores de base de datos PostgreSQL y Oracle respectivamente.

Presentan:
GUERRERO GAIBOR KETER ADONIS
JAMA MANZABA CARMEN ARACELY
LÁZARO MURILLO JOHANNA LISSETH
DELGADO REZABALA PAÚL DAVID

Docente:
ING. CÉSAR CEDEÑO

2016-2017

Página 2 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Contenido

Introducción ............................................................................................................4

Objetivos…………………………………………………………………………………5
Objetivo General ............................................................................................... 5

Objetivos Específicos ......................................................................................... 5

Diseño Global de la Propuesta.............................................................................6

Desarrollo de la propuesta ....................................................................................7


Configuraciones iniciales .............................................................................. 7

Configuración e instalación de Symmetric en nodo Master – CentOS..15

Configuración nodo cliente - Ubunto ....................................................... 25

Desarrollo de la replicación ........................................................................... 25

Conclusiones .........................................................................................................26

Recomendaciones ...............................................................................................26

Bibliografía .............................................................................................................27

Página 3 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Introducción

Muchas empresas y organizaciones tienen almacenada en bases de datos


información vital de muchos proveedores. Cuando una organización empieza
a automatizar sus procesos, a menudo es necesario que se comparen los datos
de bases de datos dispares y se compartan con otros procesos. En muchos
casos, los sistemas de base de datos no son directamente compatibles y, a
menudo, no todas usan el mismo sistema operativo. Este escenario se suele
denominar entorno de datos heterogéneos.

Symmetric es un software de replicación de datos asíncrona que permite


subscriptores múltiples y sincronización bidireccional. Utiliza tecnologías web y
de bases de datos para replicar tablas entre bases de datos relacionales, casi
en tiempo real. Constituye una potente herramienta para la replicación de
datos, ya sean homogéneos o no, independiente del gestor de base de datos
que se utilice, siempre y cuando soporte la tecnología de trigger y driver JDBC.
Es una herramienta en constante evolución con una amplia comunidad, fácil
de aprender y con más de una posibilidad para su despliegue, lo que permite
usar la forma más adecuada según las características del hardware que se
posea. Su configuración es manejada centralmente.

Página 4 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Objetivos

Objetivo General

Evidenciar conocimientos aplicados en el Taller 2, de integración de servicios de


datos ETL, con Sistemas operativos Linux Centos como servidor y Ubuntu como
cliente, con gestores de base de datos PostgreSQL y Oracle respectivamente,
utilizando la herramienta de replicación SymmetricDS en dos escenarios de
aplicación distintos.

Objetivos Específicos

 Investigar información con respecto a la replicación heterogénea de


base de datos en distintos sistemas operativos y distintos gestores de base
de datos.
 Realizar la conexión entre las máquinas que se utilizaran en este taller
(hacer ping de Windows a Centos server).
 Configurar correctamente las máquinas virtuales, para poder replicar
datos entre un servidor y sus clientes.
 Ejecutar procesos de replicación de base de datos en dos escenarios de
aplicación distintos.

Página 5 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Diseño Global de la Propuesta

Esta memoria técnica explicara los pasos usados en el taller #2 en donde


se aplicaron conocimientos de Base de Datos Distribuidas para resolver la
siguiente problemática propuesta.

Configuraciones iniciales para la replicación.

 Comprobar que exista conexión entre las máquinas que vamos a utilizar.
 Instalar la herramienta que se utilizará para realizar la replicación
 Crear la Base de Datos que se replicará.

Configuramos el distribuidor.

 Crear una nueva distribución en el publicador.

Implementar la replicación

 Realizar la publicación

Configurar el suscriptor.

Realizar operaciones con replicación

 Ingresar datos para comprobar la correcta actualización desde un


servidor a otro.
 Realizar las configuraciones para la replicación.

Página 6 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Desarrollo de la propuesta

SymmetricDs es software de código abierto para el archivo y la sincronización


de bases de datos con soporte para la replicación multi-master, la
sincronización filtrada, y la transformación a través de la red en un entorno
heterogéneo. Es compatible con varios abonados con un sentido o
bidireccional, replicación de datos asincrónica. Utiliza tecnologías web y bases
de datos para replicar datos como una operación en tiempo real o cerca
programado. El software fue diseñado para escalar para un gran número de
nodos, trabajar a través de conexiones de bajo ancho de banda, y soportar
períodos de interrupción de la red. Funciona con la mayoría de sistemas
operativos , sistemas de archivos y bases de datos , incluyendo Oracle, MySQL,
MariaDB, PostgreSQL, MS SQL Server (including Azure), IBM DB2, H2, HSQLDB,
Derby, Firebird, Interbase, Informix, Greenplum, SQLite (including Android),
Sybase ASE, y Sybase ASA (SQL Anywhere) databases

Configuraciones iniciales

Paso 1: Comprobar que exista conexión entre las máquinas que vamos a
usar por medio del comando ping

Desde la máquina con Centos server

Desde máquina con Ubuntu

Paso 2: Creamos la base de datos que se va a replicar, en este caso se


llamará Taller2, con el siguiente script.

CREATE TABLE Ciudad


(
id_ciudad INT NOT NULL,
descripcion VARCHAR(25) NOT NULL,
CONSTRAINT PK_CIUDAD PRIMARY KEY (id_ciudad)
)
GO

--DATILLOS
INSERT INTO ciudad VALUES (1, 'Manta'), (2, 'Portoviejo'),(3,'Quito'),
(4,'Machala'), (5, 'Ambato');

Página 7 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

select * from Ciudad

CREATE TABLE PuntoVenta


(
id_puntoventa INT NOT NULL,
id_ciudad INT NOT NULL,
horario VARCHAR(25) NOT NULL,
ventanilla VARCHAR(25) NOT NULL,
CONSTRAINT PK_PUNTOVENTA PRIMARY KEY (id_puntoventa),
CONSTRAINT FK_CIUDAD FOREIGN KEY (id_ciudad) REFERENCES ciudad
(id_ciudad)
)
GO

--DATILLOS
insert into PuntoVenta VALUES (1, 1,'8:00-24:00', '1'),(2, 2, '8:00-24:00',
'2'),(3, 3, '8:00-24:00', '3'),(4, 4, '8:00-24:00', '4');
select * from PuntoVenta

CREATE TABLE Ruta


(
id_ruta INT NOT NULL,
descripcion VARCHAR(25) NOT NULL,
CONSTRAINT PK_RUTA PRIMARY KEY (id_ruta)
)
GO
insert into Ruta VALUES (1, 'Manta-Portoviejo'),(2, 'Manta-Quito'),(3,
'Portoviejo-Ambato'),(4,'Manta-Machala');

CREATE TABLE Tarifa


(
id_tarifa INT NOT NULL,
valor VARCHAR(25) NOT NULL,
CONSTRAINT PK_TARIFA PRIMARY KEY (id_tarifa)
)
GO

insert into Tarifa VALUES (1,'Manta-Portoviejo: 1,00'),(2,'Manta-Quito:


15,00'),(3,'Portoviejo-Ambato: 12,00'),(4,'Manta-Machala: 8,00');

CREATE TABLE Servicio


(
id_servicio INT NOT NULL,
descripcion VARCHAR(25) NOT NULL,
valor VARCHAR(25) NOT NULL,
CONSTRAINT PK_SERVICIO PRIMARY KEY (id_servicio)
)
GO
insert into Servicio VALUES (1,'Popular','1,00'),(2,'Ejecutiva','1,50');

CREATE TABLE Det_tarifa


(
id_det_tarifa INT NOT NULL,
id_tarifa INT NOT NULL,
id_servicio INT NOT NULL,
CONSTRAINT PK_DET_TARIFA PRIMARY KEY (id_det_tarifa),
CONSTRAINT FK_TARIFA FOREIGN KEY (id_tarifa) REFERENCES tarifa
(id_tarifa),
CONSTRAINT FK_SERVICIO FOREIGN KEY (id_servicio) REFERENCES
servicio (id_servicio)
)
GO

Página 8 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

insert into Det_tarifa VALUES(1,1,1),(2,2,2);

CREATE TABLE Bus


(
id_bus INT NOT NULL,
id_tarifa INT NOT NULL,
matricula VARCHAR(25) NOT NULL,
estado VARCHAR(25) NOT NULL,
CONSTRAINT PK_BUS PRIMARY KEY (id_bus),
CONSTRAINT FK_TARIFA FOREIGN KEY (id_tarifa) REFERENCES tarifa
(id_tarifa)
)
insert into Bus VALUES
(5,1,'FGJKUY890','Libre'),(6,2,'QWERT098','Ocupado'),(7,3,'XCVBB8976','Libre'),(8
,4,'EDCVBGT8975','Ocupado');
select * from bus
CREATE TABLE Compartimiento
(
id_compartimiento INT NOT NULL,
id_bus INT NOT NULL,
tipo VARCHAR(25) NOT NULL,
estado VARCHAR(25) NOT NULL,
CONSTRAINT PK_COMPARTIMIENTO PRIMARY KEY (id_compartimiento),
CONSTRAINT FK_BUS FOREIGN KEY (id_bus) REFERENCES Bus (id_bus)
)

insert into Compartimiento VALUES


(1,1,'Popular','Libre'),(2,2,'Ejecutivo','Ocupado'),(3,3,'Ejecutivo','Libre'),(4,
4,'Popular','Ocupado');

CREATE TABLE Doc_Identificacion


(
id_doc_identificacion INT NOT NULL,
tipo VARCHAR(25) NOT NULL,
num_identificacion VARCHAR(25) NOT NULL,
CONSTRAINT PK_DOC_IDENTIFICACION PRIMARY KEY
(id_doc_identificacion)
)
GO
insert into Doc_Identificacion VALUES
(1,'cedula','1316864964'),(2,'cedula','1315813679'),(3,'cedula','1398765489');
insert into Doc_Identificacion VALUES (4,'cedula','1316783947');

CREATE TABLE Datos_Personales


(
id_datos_personales INT NOT NULL,
id_doc_identificacion INT NOT NULL,
nombres VARCHAR(25) NOT NULL,
apellidos VARCHAR(25) NOT NULL,
telefono VARCHAR(25) NOT NULL,
CONSTRAINT PK_DATOS_PERSONALES PRIMARY KEY (id_datos_personales),
CONSTRAINT FK_DOC_IDENTIFICACION FOREIGN KEY
(id_doc_identificacion) REFERENCES Doc_identificacion (id_doc_identificacion)
)
GO

insert into Datos_Personales VALUES


(1,1,'Johanna','Lázaro','0991307577'),(2,2,'Carmen','Jama','0978843576'),(3,3,'Ke
ter','Guerrero','0994468808'),(4,4,'Paul','Cedeno','0959731672');

CREATE TABLE Cliente

Página 9 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

(
id_cliente INT NOT NULL,
id_datos_personales INT NOT NULL,
CONSTRAINT PK_CLIENTE PRIMARY KEY (id_cliente),
CONSTRAINT FK_DATOS_PERSONALES FOREIGN KEY (id_datos_personales)
REFERENCES Datos_Personales (id_datos_personales)
)
GO

insert into Cliente VALUES (1,1),(2,2),(3,3),(4,4);


GO
select *from Cliente

CREATE TABLE Empleado


(
id_empleado INT NOT NULL,
id_datos_personales INT NOT NULL,
direccion VARCHAR(25) NOT NULL,
email VARCHAR(25) NOT NULL,
CONSTRAINT PK_EMPLEADO PRIMARY KEY (id_empleado),
CONSTRAINT FK_DATOS_PERSONALES FOREIGN KEY (id_datos_personales)
REFERENCES Datos_Personales (id_datos_personales)
)
GO

insert into Empleado VALUES (1,1,'Santa


Isabella','jois_2903_@hotmail.com'),(2,2,'Altamira','carmen.jama@gmail.com'),(3,3
,'Av. Universitaria','kguerrero@outlook.com'),(4,4,'La
Lorena','paul.cr@gmail.com')
CREATE TABLE Usuario
(
id_usuario INT NOT NULL,
nombre_usuario VARCHAR(25) NOT NULL,
contrasena VARCHAR(25) NOT NULL,
CONSTRAINT PK_USUARIO PRIMARY KEY (id_usuario)
)
GO
insert into Usuario VALUES
(1,'Joshua','NoMeLaSe'),(2,'Josselyn','123456'),(3,'Diana','contrasena1'),(4,'Dan
ia','noolvidar');

CREATE TABLE Copiloto


(
id_copiloto INT NOT NULL,
id_empleado INT NOT NULL,
estado VARCHAR(25) NOT NULL,
CONSTRAINT PK_COPILOTO PRIMARY KEY (id_copiloto),
CONSTRAINT FK_EMPLEADO FOREIGN KEY (id_empleado) REFERENCES
Empleado (id_empleado)
)
GO
insert into Copiloto VALUES (1,1,'Ocupado'),(2,2,'Ocupado');
CREATE TABLE Conductor
(
id_conductor INT NOT NULL,
id_empleado INT NOT NULL,
num_licencia VARCHAR(25) NOT NULL,
estado VARCHAR(25) NOT NULL,
CONSTRAINT PK_CONDUCTOR PRIMARY KEY (id_conductor),
CONSTRAINT FK_EMPLEADO FOREIGN KEY (id_empleado) REFERENCES
Empleado (id_empleado)
)

Página 10 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

GO

insert into Conductor VALUES


(1,1,'HJKLÑ987','Ocupado'),(2,2,'QWERTY123','Libre');

CREATE TABLE Detalle_Pilotos


(
id_detalle_pilotos INT NOT NULL,
id_conductor INT NOT NULL,
id_copiloto INT NOT NULL,
CONSTRAINT PK_DETALLE_PILOTOS PRIMARY KEY (id_detalle_pilotos),
CONSTRAINT FK_CONDUCTOR FOREIGN KEY (id_conductor) REFERENCES
Conductor (id_conductor),
CONSTRAINT FK_COPILOTO FOREIGN KEY (id_copiloto) REFERENCES
Copiloto (id_copiloto)
)
GO
insert into Detalle_Pilotos VALUES (1,1,1),(2,2,2);

CREATE TABLE Asientos


(
id_asientos INT NOT NULL,
id_bus INT NOT NULL,
tipo VARCHAR(25) NOT NULL,
estado VARCHAR(25) NOT NULL,
CONSTRAINT PK_ASIENTOS PRIMARY KEY (id_asientos),
CONSTRAINT FK_BUS FOREIGN KEY (id_bus) REFERENCES Bus (id_bus)
)
GO

insert into Asientos VALUES


(1,1,'Popular','ocupado'),(2,2,'Ejecutivo','libre'),(3,3,'Popular','libre');

CREATE TABLE horario


(
id_horario INT NOT NULL,
id_bus INT NOT NULL,
id_detalle_pilotos INT NOT NULL,
id_ruta INT NOT NULL,
fecha VARCHAR(25) NOT NULL,
hora VARCHAR(25) NOT NULL,
CONSTRAINT PK_HORARIO PRIMARY KEY (id_horario),
CONSTRAINT FK_BUS FOREIGN KEY (id_bus) REFERENCES Bus (id_bus),
CONSTRAINT FK_DETALLE_PILOTOS FOREIGN KEY (id_detalle_pilotos)
REFERENCES Detalle_Pilotos (id_detalle_pilotos),
CONSTRAINT FK_RUTA FOREIGN KEY (id_ruta) REFERENCES Ruta (id_ruta)
)
GO

insert into horario VALUES (1,1,1,1,'12-09-2016','13:00pm'),(2,2,2,2,'15-09-


2016','19:00pm');

select * from horario


CREATE TABLE Vendedor
(
id_vendedor INT NOT NULL,
id_empleado INT NOT NULL,
id_usuario INT NOT NULL,
id_puntoventa INT NOT NULL,
CONSTRAINT PK_VENDEDOR PRIMARY KEY (id_vendedor),
CONSTRAINT FK_EMPLEADO FOREIGN KEY (id_empleado) REFERENCES
Empleado (id_empleado),

Página 11 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

CONSTRAINT FK_USUARIO FOREIGN KEY (id_usuario) REFERENCES Usuario


(id_usuario),
CONSTRAINT FK_PUNTOVENTA FOREIGN KEY (id_puntoventa) REFERENCES
PuntoVenta (id_puntoventa)
)
GO

insert into Vendedor VALUES (1,1,1,1),(2,2,2,2),(3,3,3,3)

CREATE TABLE Cuenta


(
id_cuenta INT NOT NULL,
id_cliente INT NOT NULL,
num_cuenta VARCHAR(25) NOT NULL,
nombre_banco VARCHAR(25) NOT NULL,
tipo_cuenta VARCHAR(25) NOT NULL,
CONSTRAINT PK_CUENTA PRIMARY KEY (id_cuenta),
CONSTRAINT FK_CLIENTE FOREIGN KEY (id_cliente) REFERENCES Cliente
(id_cliente)
)

insert into Cuenta VALUES


(1,1,'1234567890','Pichincha','Corriente'),(2,2,'0987654321','Produbanco','Ahorro
'),(3,3,'9876543210','Internacional','Corriente');

CREATE TABLE Multas


(
id_multas INT NOT NULL,
id_cliente INT NOT NULL,
id_reserva INT NOT NULL,
valor VARCHAR(25) NOT NULL,
CONSTRAINT PK_MULTAS PRIMARY KEY (id_multas),
CONSTRAINT FK_CLIENTE FOREIGN KEY (id_cliente) REFERENCES Cliente
(id_cliente),
CONSTRAINT FK_RESERVA FOREIGN KEY (id_reserva) REFERENCES Reserva
(id_reserva)
)
GO

insert into Multas VALUES (1,1,1,'30 dólares'),(2,2,2,'15 Dólares')

CREATE TABLE Pago


(
id_pago INT NOT NULL,
id_cliente INT NOT NULL,
id_reserva INT NOT NULL,
id_cuenta INT NOT NULL,
tipo_pago VARCHAR(25) NOT NULL,
CONSTRAINT PK_PAGO PRIMARY KEY (id_pago),
CONSTRAINT FK_CLIENTE FOREIGN KEY (id_cliente) REFERENCES Cliente
(id_cliente),
CONSTRAINT FK_RESERVA FOREIGN KEY (id_reserva) REFERENCES Reserva
(id_reserva),
CONSTRAINT FK_CUENTA FOREIGN KEY (id_cuenta) REFERENCES Cuenta
(id_cuenta)
)
GO

GO

CREATE TABLE Detalle_Encomienda

Página 12 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

(
id_detalle_encomienda INT NOT NULL,
id_encomienda INT NOT NULL,
id_horario INT NOT NULL,
id_compartimiento INT NOT NULL,
id_ciudad INT NOT NULL,
CONSTRAINT PK_DETALLE_ENCOMIENDA PRIMARY KEY
(id_detalle_encomienda),
CONSTRAINT FK_ENCOMIENDA FOREIGN KEY (id_encomienda) REFERENCES
Encomienda (id_encomienda),
CONSTRAINT FK_HORARIO FOREIGN KEY (id_horario) REFERENCES Horario
(id_horario),
CONSTRAINT FK_COMPARTIMIENTO FOREIGN KEY (id_compartimiento)
REFERENCES Compartimiento (id_compartimiento),
CONSTRAINT FK_CIUDAD FOREIGN KEY (id_ciudad) REFERENCES Ciudad
(id_ciudad)
)
GO

CREATE TABLE Reserva


(
id_reserva INT NOT NULL,
id_vendedor INT NOT NULL,
id_cliente INT NOT NULL,
fecha VARCHAR(25) NOT NULL,
hora VARCHAR(25) NOT NULL,
valor VARCHAR(25) NOT NULL,
CONSTRAINT PK_RESERVA PRIMARY KEY (id_reserva),
CONSTRAINT FK_CLIENTE FOREIGN KEY (id_cliente) REFERENCES Cliente
(id_cliente),
CONSTRAINT FK_VENDEDOR FOREIGN KEY (id_vendedor) REFERENCES
Vendedor (id_vendedor)
)
GO

insert into Reserva VALUES (1,1,1,'06-09-2016','13:00pm','5,00'),(2,2,2,'07-09-


2016','14:00pm','5,00'),(3,3,3,'08-09-2016','23:00pm','8,00');

CREATE TABLE Detalle_Reserva


(
id_detalle_reserva INT NOT NULL,
id_reserva INT NOT NULL,
id_horario INT NOT NULL,
id_asientos INT NOT NULL,
id_ciudad INT NOT NULL,
CONSTRAINT PK_DETALLE_RESERVA PRIMARY KEY (id_detalle_reserva),
CONSTRAINT FK_RESERVA FOREIGN KEY (id_reserva) REFERENCES Reserva
(id_reserva),
CONSTRAINT FK_HORARIO FOREIGN KEY (id_horario) REFERENCES Horario
(id_horario),
CONSTRAINT FK_ASIENTOS FOREIGN KEY (id_asientos) REFERENCES
Asientos (id_asientos),
CONSTRAINT FK_CIUDAD FOREIGN KEY (id_ciudad) REFERENCES Ciudad
(id_ciudad)
)
GO

insert into Detalle_Reserva VALUES (1,1,1,1,1),(2,2,2,2,2);

CREATE TABLE Encomienda


(
id_encomienda INT NOT NULL,

Página 13 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

id_vendedor INT NOT NULL,


id_cliente INT NOT NULL,
id_pago INT NOT NULL,
fecha VARCHAR(25) NOT NULL,
hora VARCHAR(25) NOT NULL,
valor VARCHAR(25) NOT NULL,
CONSTRAINT PK_ENCOMIENDA PRIMARY KEY (id_encomienda),
CONSTRAINT FK_CLIENTE FOREIGN KEY (id_cliente) REFERENCES Cliente
(id_cliente),
CONSTRAINT FK_VENDEDOR FOREIGN KEY (id_vendedor) REFERENCES
Vendedor (id_vendedor),
CONSTRAINT FK_PAGO FOREIGN KEY (id_pago) REFERENCES Pago (id_pago)
)
GO

CREATE TABLE Recorrido


(
id_recorrido INT NOT NULL,
id_ruta INT NOT NULL,
id_ciudad INT NOT NULL,
orden VARCHAR(25) NOT NULL,
valor VARCHAR(25) NOT NULL,
CONSTRAINT PK_RECORRIDO PRIMARY KEY (id_recorrido),
CONSTRAINT FK_RUTA FOREIGN KEY (id_ruta) REFERENCES Ruta (id_ruta),
CONSTRAINT FK_CIUDAD FOREIGN KEY (id_ciudad) REFERENCES Ciudad
(id_ciudad)
)
GO

Página 14 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Configuración e instalación de Symmetric en nodo Master - CentOS

Ahora comenzamos la configuración en el nodo master que en nuestro


caso va a ser el host con el sistema operativo Centos server.

Paso 1

1. Configurar la base de datos postgresql para que puedan acceder hosts


remotos a hacer cambios en la base de datos a replicar. Para esto
editamos el archivo de configuración de postgresql
Vamos a la siguiente dirección

Y configuramos el archivo pg_hba.conf, en el cual pones las ip que van a


tener acceso a la base de datos postgresql en Centos

Página 15 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Paso 2

1. Configuramos el puerto que va a usar para la conexión, por medio de


la edición del siguiente archivo de configuración de postgresql
Abrimos el archivo postgresql.conf

Y editamos los puertos y editamos las IP que se van a escuchar

Página 16 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Paso 3

Configuramos la herramienta de replicación SymmetricDs en el host con


Centos server, como nodo maestro para este extremo de la replicación

Aceptamos los términos y condiciones de uso.

Se escoge la ruta donde se desea instalar el Symmetric.

Página 17 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Se nos mostrará un mensaje de advertencia y damos clip en aceptar y


siguiente.

Página 18 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Escogemos la segunda opción para correr el servidor luego de la


instalación.

A continuación se muestran los puertos que va a usar el sistema,


dejamos los valores por defecto.

Página 19 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Se muestra el resumen de instalación, verificamos que todo este


correcto y damos clip a siguiente.

Se ejecuta la instalación del programa.

Página 20 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Finalmente el asistente nos indicará que el software ha sido


instalado correctamente, podemos escoger la opción de guardar
el script de instalación.

Al iniciar el Simmetric nos brindará varias opciones: iniciar o parar


servidor, abrir consola web y la última que tiene que nos permite
iniciar el proceso del servidor automáticamente al iniciar nuestra PC.

Página 21 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Paso 4

Terminada la instalación abrimos la consola web, seleccionamos nodo


Master

A continuación debemos de configurar el nodo de la base de


datos. En URL debemos de cambiar los valores de hostname a
localhost, y luego de este parámetro especificamos el nombre de
nuestra base de datos a replicar.
User Id: es el usuario sa de SQL y su respectiva contraseña.

Página 22 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

En la siguiente opción escogemos configurar por nosotros mismos


los nodos.

A continuación tendremos que asignarle un nombre al nodo


(estos valores pueden variar según nuestro criterio), trabajaremos
con “server”.

Asignamos un id o un identificador (estos valores pueden variar


según nuestro criterio), en este caso trabajaremos con “000”.

A continuación debemos de crear un usuario para trabajar con el


Symmetric, en nuestro caso trabajaremos con el usuario “admin”.

Página 23 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Finalmente nos aparecerá una nueva ventana indicándonos la


configuración correcta del nodo.

Es aquí donde se debe de ingresar con el usuario y contraseña


creados anteriormente.

Se nos muestra la siguiente ventana de bienvenida.

Página 24 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Procederemos a crear un nodo para el cliente, al que asignaremos el


nombre de grupo1.

Configuración nodo cliente - Ubunto

La instalación del Symmetric es la misma en ambos sistemas operativos. Así una


vez que se haya instalado lo configuramos del siguiente modo.
CONFIG EN UBUTNO

Desarrollo de la replicación

Página 25 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Conclusiones

La replicación en base de datos heterogénea se realiza de forma diferente


que una replicación homogénea, se necesita configurar los host de tal forma
que sea posible hacer ping entre ellos, configurar el acceso a la base de datos
que se vallan a utilizar y la correcta implementación de la herramienta de
replicación que se va a utilizar.

Esta práctica de replicación es un ejemplo sencillo para entender con


mayor claridad el concepto de lo que es un sistema de base de datos
distribuidos heterogéneo.

Otro punto que también ayudo, fue que la práctica se realizó con
symmetricDs de forma gráfica, ya que a diferencia de trabajar symmetric por
consola, la interfaz gráfica es mucho más intuitiva y fácil de usar.

Recomendaciones

Al momento de hacer una replicación heterogénea hay que tener la


certeza de que además de tener conexión entre el publicador y subscriptor
necesitamos modificar el acceso a las bases de datos para que puedan ser
modificadas por otros host además del host local, de tal manera que la
replicación sea satisfactoria y no ocurran problemas ocasionados por falta de
privilegios de los usuarios de las máquinas.

Se debe tener bien defina la red en la cual se va a trabajar, es decir,


configurar las IP de cada host que participe en la replicación, para que así no
existan problemas de conexión o autentificación remota al momento de poner
en marcha la práctica.

Página 26 de 27
TALLER I
Facultad de Ciencias Informáticas 6to. Nivel “A”

Bibliografía
https://www.symmetricds.org/ /doc/3.8/html/tutorials.html

http://docplayer.es/743020-Dialecto-de-sql-server-para-la-replica-de-datos-en-el-
software-reko.html

Página 27 de 27

Potrebbero piacerti anche