You are on page 1of 12

REPLICACIÓN DE BASE DE DATOS MYSQL – XAMPP

AUTOR:

YADIRA MEDINA COMETA

YARITZA PAOLA ARÉVALO FUENTES

MATERIA:

SISTEMAS DISTRIBUIDOS

DOCENTE:

JUAN CARLOS POLANIA CORTES

CORPORACIÓN UNIVERSITARIA DEL HUILA

FACULTAD DE INGENIERÍA

NEIVA – HUILA 14/11/2018


I. INTRODUCCIÓN

Los sistemas gestores de bases de datos son la herramienta más adecuada para almacenar los
datos en un sistema de información debido a sus características de seguridad, recuperación
ante fallos, gestión centralizada, estandarización del lenguaje de consulta y funcionalidad
avanzada. Actualmente existen en la red multitud de aplicaciones y de sistemas que tienen
por debajo una base de datos que sigue el modelo cliente-servidor. Muchas veces esos
sistemas deben de tener garantizada la accesibilidad por lo que para evitar problemas es
necesario utilizar este tipo de técnicas de replicación de base de datos de forma que un fallo
en uno de los servidores de base de datos no impida a los usuarios seguir utilizando la
aplicación.

Mediante la replicación de base de datos, usuarios de todo el mundo pueden estar accediendo
a lo que para ellos son los mismos datos, aunque en realidad, físicamente esos datos pueden
estar de forma transparente para el usuario, en diferentes nodos o localidades.

II. OBJETIVOS - OBJECTIVES

A. Objetivo general.
 Replicar las consultas de actualización de una base de datos maestra.
B. Objetivos específicos:
 Indicar la replicación de una base de datos en MySQL utilizando la XAMPP.
 Diseñar el esquema para la conexión de dos equipos.
 Indicar la diferencia entre MASTER y SLAVE

III. MARCO TEÓRICO

Podemos hablar al menos de 3 tipos de replicación de base de datos:


Replicación Instantánea: los datos de un servidor son simplemente copiados a otro servidor
o a otra base de datos dentro del mismo servidor. Al copiarse todo no necesitas un control de
cambios. Se suele utilizar cuando los datos cambian con muy poca frecuencia.
Replicación Transaccional: primero se envía una copia completa de la base de datos y luego
se van enviando de forma periódica (o a veces continua) las actualizaciones de los datos que
cambian. Se utiliza cuando necesitas que todos los nodos con todas las instancias de la base
de datos tengan los mismos datos a los pocos segundos de realizarse un cambio.
Replicación de mezcla: los datos de dos o más bases de datos se combinan en una sola base
de datos. En primer lugar, se envía una copia completa de la base de datos. Luego el Sistema
de Gestión de Base de Datos va comprobando los cambios que van apareciendo en los
distintos nodos y a una hora programada o a petición los datos se sincronizan. Es sobre todo
útil cuando cada nodo suele utilizar solo los datos que se actualizan allí pero que por
circunstancias necesita tener también los datos de los otros sitios. (Archiving, 2016).
IV. DESARROLLO – DEVELOPMENT

 El siguiente ejercicio consiste en la conexión de dos equipos donde uno funciona como
MASTER y otro como SLAVE o repositorio, para el desarrollo del ejercicio se trabajó
con una maquina física y otra virtual, en la misma red; como se muestra en la figura 1.

Fig. 1. Esquema de Direccionamiento.

 Para conocer la dirección IP de los equipo o servidores es a través del comando símbolo
de sistemas (CMD), luego de ello escribir la IPCONFIG -ALL para que muestre toda la
configuración a nivel red, como se muestra en la figura 2. Es preferible que se trabaje con
direccionamiento fijo.

SLAVE

MASTER

Fig. 2. Direccionamiento de máquinas.


Configuración MASTER

 Para la replicación de MySQL se trabajará con la aplicación XAMPP por lo tanto el


servicio debe estar encendido en la maquina principal donde se iniciará con la
configuración, como se muestra en la figura 3.

Fig. 3. Inicio del servicio MySQL desde XAMPP.

 Una vez conocido iniciado el servicio se procede con la creación de la base de datos que
en este caso se llamará replica e inserción de datos en la misma como se muestra en la
figura 4.

Fig. 4. Inserción de datos en la db replica.

 Al tener establecida la base de datos, se realiza la modificación del archivo my.ini


ubicado en la ruta C:\xampp\mysql\bin o accediendo directamente desde XAMPP en la
opción configuración, como se muestra en la figura 5.

Fig. 5. Acceso al archivo my.ini desde XAMPP


 Una vez ubicados sobre el archivo se realiza la inserción del comando log-bin=mysql-
bin debajo de [Mysqld], como se muestra en la figura 6.

Fig. 6. Modificación archivo my.ini

 En el mismo archivo se dirige a la opción server-id = 1 y realiza la validación de que no esté


comentado (#) y el identificador sea 1 lo que indica que ese equipo será nuestro Master, como
se muestra en la figura 7.

Fig. 7. Modificación archivo my.ini

 Luego le damos guardar los cambios como se muestra en la figura 8.

Fig. 8. Guardar cambios del archivo my.ini


 Al guardar los cambios de debe reiniciar el servicio de MySQL

 Luego de ello vamos a phpMyAdmin y sobre la base de datos creada se dirige a la pestaña SQL
para ejecutar la sentencia GRANT REPLICATION SLAVE ON *.* TO 'admin'@'192.168.2.57'
IDENTIFIED BY '1234', como se muestra en la figura 9.
- admin: Es el usuario a crear para la conexión al SLAVE.
- 192.168.2.57: La dirección IP del SLAVE (máquina de repositorio).
- 1234: Es la contraseña asignada para la conexión.

Fig. 9. Creación de usuario para la replicación.

 Se procede con la consulta del status del master con el objetivo de conocer la ubicación y el
archivo que corresponde, se debe tener muy en cuenta el resultado arrojado debido a que más
adelante del procedimiento se usaran. Para la consulta se debe realizar con el comando Show
Master Status, como se muestra en la figura 10.

Fig. 10. Consulta del status de master.


 Se realiza la validación de que se haya creado correctamente el usuario con el que se realizará la
conexión a la base de datos con los parámetros indicados en la figura 9, sobre la pestaña u opción
cuentas de usuario como se muestra en la figura 11.

Fig. 11. Consulta de usuario.

 Es importante tener desactivado el firewall de Windows en las maquinas a trabajar como se


muestra en la figura 12.

Fig. 12. Desactivación de Firewall de Windows.


Configuración SLAVE
 Una vez configurado el MASTER, se realiza la configuración sobre el SLAVE, iniciando el
servicio de MySQL e importando la base de datos ya antes creada, como se muestra en la figura
13.

Fig. 13. Importación de la base de datos en el SLAVE.

 Al tener establecida la base de datos, se realiza la modificación del archivo my.ini ubicado en la
ruta C:\xampp\mysql\bin o accediendo directamente desde XAMPP en la opción configuración,
como se muestra en la figura 14.

Fig. 14. Acceso al archivo my.ini desde XAMPP

 Una vez ubicados sobre el archivo se realiza la inserción del comando replicate_do_db = (nombre
de la base de datos), debajo de [Mysqld], como se muestra en la figura 15.

Fig. 15. Inserción del comando replicate_do_db en el archivo my.ini


 Sobre el mismo archivo se comenta o inhabilita la opción server-id= 1 con un (#) que indica que
es MASTER como lo muestra la figura 16 y se habilita la opción server-id= 2 borrando el (#) que
establece o habilita la maquina como SLAVE, como se muestra en la figura 17.

Fig. 16. Inhabilitar la opción de MASTER

Fig. 17. Se habilita el SLAVE

 Se guardan los cambios efectuados en el archivo como se muestra en la figura 18.

Fig. 18. Guardar cambios efectuados sobre my.ini

 Se reinicia el servicio de MySQL server.


 Luego de ello vamos a la base de datos y ejecutamos lo siguiente comando con la información de
la figura 9 y 10, como se muestra en la figura 19.

CHANGE MASTER TO MASTER_HOST = 'IP del master;


CHANGE MASTER TO MASTER_USER ='Usuario creado en el master';
CHANGE MASTER TO MASTER_PASSWORD = 'Contraseña asignada en el master';
CHANGE MASTER TO MASTER_LOG_FILE = 'Identificación de la base de datos;
CHANGE MASTER TO MASTER_LOG_POS = Posición de la base de datos;
Fig. 19. Configuración de enlace con el master.

 Una vez ejecutado con éxito se procede con iniciar el servicio del SLAVE con el comando Start
Slave, como se muestra en la figura 20.

Fig. 20. Inicio de servicio SLAVE.

 Para consultar que la información del SLAVE sobre el MASTER se ha realizado correctamente
se realiza ejecución del comando Show Slave Status, mostrando el status del esclavo, como se
muestra en la figura 21.

Fig. 21. Consulta STATUS del esclavo.


V. PRUEBAS

 En el MASTER se realiza la inserción de datos sobre la base de datos, como se muestra en la


figura 22.

Fig. 22. Inserción de datos en db.

 Una vez hecha la inserción se verá reflejado el cambio en la base de datos alojada en el SLAVE
como se muestra en la figura 23, cabe aclarar que sólo se ven reflejados los cambios de master a
esclavo no de esclavo a master.

Fig. 23. Verificación de inserción en el esclavo.


VI. BILIOGRAFÍA

 Archiving, D. (27 de Junio de 2016). PowerData. Obtenido de https://blog.powerdata.es/el-


valor-de-la-gestion-de-datos/beneficios-de-la-replicacion-de-base-de-datos

You might also like