Está en la página 1de 12

Replicacin de bases de datos utilizando MySQL

Bases de Datos Distribuidas

M .en. TIC Roci Gonzlez Mendoza

Ingeniera en Software

Irving Gerzain Franco Hernndez


Sergio Valdivia Martnez

Septiembre-Diciembre 2015

Replicacin de Base de Datos


Replicacin es el proceso de copiar y administrar objetos de base de datos, tales como tablas, hacia
mltiples bases de datos en localidades remotas que son parte de un sistema de bases de datos
distribuido. Los cambios ejecutados en una localidad son capturados y guardados localmente antes
de ser aplicados a las localidades remotas. Los trminos sistemas de bases de datos distribuidas y
replicacin de bases de datos, estn relacionados, pero no son equivalentes. En un sistema puro de
bases de datos distribuidas se maneja o administra una sola copia de todos los objetos de la base
de datos y sus datos, es decir que existe de manera nica la ocurrencia de un objeto de base de
datos en todas las localidades, es decir la informacin se encuentra particionada de manera
horizontal entre todas las localidades. Las aplicaciones en una base de datos distribuida utilizan
transacciones distribuidas para acceder y modificar tanto los datos locales como remotos.

Figura 1. Ejemplo explicativo bsico de una replicacin.

Configuracin del Servidor Maestro


1. Desactivar el Firewall de Windows y el antivirus que usa el Servidor Maestro.
1.1 Dirigirse al Panel de Control >Sistema >Firewall

Figura 2. Desactivar Firewall de Windows


1.2 En este caso es Bitdefender Internet Security

Figura 2.1 Desactivar antivirus

2. Modificar el archivo my.ini el cual se encuentra en el panel de control de XAMPP> MySQL>


Config. Abrimos el archivo para modificarlo, colocando lo siguiente (ver Figura 3).

Figura 3. Configuracin del archivo.


3. Reiniciamos los Servicios de MySQL , para esto en el Panel de control de XAMPP
detenemos el servicio de y lo iniciamos nuevamente.
3.1 Procedemos a reiniciar los servicios de MySQL.

Figura 4 Reinicio de MySQL


4. Ingresamos a la consola de Windows usando la combinacin de Teclas Windows +R y
escribiendo lo siguiente.

Figura 5. Ejecucin de la consola

4.1 Una vez dentro de la consola haremos ping al ordenador que ser el esclavo de la
replicacin como se muestra en la imagen (Ver Figura 5.1 ).

Figura 5.1 Comprobacin conexin entre el Maestro y el Esclavo.


4.2 Ahora tenemos que entrar a la terminal de MySQL (Ver Figura 5.2).

Figura 5.2 Ingreso a la terminal de MySQL.


4.3 Una vez dentro de la terminal de MySQL escribiremos el siguiente comando (Ver Figura
5.3)
4.4 Luego tecleamos el siguiente comando: flush privileges, con este le daremos todos los
privilegios al maestro para poder hacer dicha replica (Ver Figura 5.3).
4.5 Ahora lo que vamos hacer es mostrar las bases de datos con las que contamos para de
esta manera seleccionar a cual se har la rplica.(Ver Figura 5.3).

Figura 5.3 Comandos para replicacin.

5.

Ahora bloqueremos las tablas de la base de datos que utilizaremos con el comando: flush
tables with read lock. (Ver Figura 5.3).
6. Con el siguiente comando show master status, mostraremos el nombre del archivo log bin
y su posicin, ya que este nos servir para configurar el esclavo (Ver Figura 6).
7. Y salimos de la terminal de MySQL. (Ver Figura 7).

Figura 6. Status del Maestro.

Con el comando (Ver Figura 7), lo que haremos es crear un respaldo de la base de datos que
utilizaremos (no es un BackUp). Una vez ya creado el archivo de respaldo (backgame.sql),
procedemos a buscarlo en la ruta C:\xampp\mysql\bin en este caso que se utiliz XAMPP.

Figura 7. Guardado de la Base de Datos.

8. Ingresamos nuevamente a la terminal de MySQL. (Ver Figura 9).


9. Ya realizada la copia de la base de datos desbloquearemos las tablas con el comando:
unlock tables. (Ver Figura 9).
10. Ahora pasamos a configurar el esclavo.

Figura 8. Carpeta Contenedora del archivo SQL.

Figura 9. Desbloqueo de Tablas.

Configuracin del Servidor Esclavo


11. Desactivar todos los escudos del Antivirus y Firewall de Windows (Ver paso 1).
12. Modificar el archivo my.ini est en la ruta C:\xampp\mysql\bin. Abrimos el archivo para
modificarlo, colocando lo siguiente (Ver Figura 10).

Figura 10. Configuracin del Esclavo.


13. Abrimos la consola de Windows (Ver paso 4).
14. Hacemos ping con la direccin IP (Ver Figura 11) del esclavo para comprobar que exista
conexin.

Figura 11. Comprobacin de conexin entre el Mestro y el Esclavo.

15. Ahora debemos entrar a la terminal de MySQL (Ver Figura 12) .

Figura 12. Login en MYSQL.


16. Lo siguiente es crear una nueva base de datos con el mismo nombre de la base de datos
que tiene el maestro a la cual se le est trabajando la rplica (Ver Figura 13).

Figura 13. Creacin y uso de la Base de Datos en el esclavo.

17. Una vez ya tengamos el backgame.sql en el disco C:\ procedemos a obtener las tablas
que respaldamos en dicho archivo el cual hicimos en el maestro (Ver Figura 14), y luego
reiniciamos los servicios de MySQL (Ver paso 3).

Figura 14. Recuperacin de la Base de Datos.

18. Entramos nuevamente a la terminal de MySQL y detenemos los servicios del esclavo y
luego hacemos login al servidor maestro (Ver Figura 16).

Figura 15. Detencin de los servicios del esclavo.

Figura 16. Login con el Maestro.

19. Ahora iniciamos los servicios del esclavo

Figura 17. Iniciar los servicios del Esclavo.


Verificacin de replicacin
Servidor Maestro
Nos situamos en el ordenador al servidor maestro como sabemos este desbloqueo las
tablas de nuestra base de datos que se replicar.
Procederemos a insertar valores a una tabla de nuestra base de datos
Usamos un sentencia select para comprobar que se insert los datos correctamente

Figura 18. Insercin de Datos en la Base de Datos.


Esclavo
Regresamos a la porttil que es esclavo y utilizamos una sentencia select para comprobar
que la insercin del maestro se realiz correctamente en el esclavo
Para comprobar que existe replica correctamente tecleamos el comando que nos indica si
la rplica se est realizando exitosamente : show slave status \G; si muestra un 0 est
funcionando correctamente de lo contrario mostrara NULL

Figura 19. Sentencia select.

Figura 20. Comprobacin de la replicacin.

La parte que indica que la replicacin es llevada a cabo es : Seconds_Behind_Mater el cual debe
mostrar 0 en caso de xito de replicacin o en su caso contrario muestra NULL.

También podría gustarte