Sunteți pe pagina 1din 9

Pasos para replicacin de una base de datos MySQL

en VirtualBox
MSC. Martn Contreras
PASOS NECESARIOS PARA LA CONEXIN ENTRE MASTER y ESCLAVO
1. Instalar la aplicacin VirtualBox (https://www.virtualbox.org/wiki/Downloads)

2. Crear una mquina virtual con el sistema operativo Windows XP.

3. Desactivar firewall de Windows en la maquina LOCAL (en caso de tener antivirus es


necesaria la desactivarlo desde ste)

y en la VIRTUAL

4. En la mquina VIRTUAL ir a la configuracin del men Red y cambiar el adaptador a


Adaptador solo-anfitrin de nombre VirtualBox Host-Only Network (Si no te aparece el
nombre debers instalar el driver de red en la mquina virtual)

5. Conectar la maquina LOCAL con la mquina VIRTUAL utilizando el adaptador "VirtualBox


Host-Only Network" que es creado automticamente por VirtualBox.

a. En la mquina local (MASTER) verificar que la configuracin IPv4 en "VirtualBox


Host-Only Network" sea:
IP
MASCARA DE RED
PUERTA ENLANCE

192.168.56.1
255.255.255.0
.
.
.

b. En la mquina virtual (ESCLAVO) verificar que la configuracin IPv4 sea:


IP
MASCARA DE RED
PUERTA ENLANCE

192.168.56.101
255.255.255.0
192.168.56.1

c. Verificar la conexin entre computadoras mediante PING desde el smbolo del


sistema de LOCAL a VIRTUAL y viceversa.

6. Instalar la misma versin de MySQL en ambos sistemas operativos tanto LOCAL como
VIRTUAL (En nuestro caso utilizamos la compilacin xampp 1.6.7 que contiene la versin
5.0.51b de MySQL, xampp dio soporte a Windows XP hasta la versin 1.8.1 segn
comentan bloggers no hay un anuncio oficial). La instalacin debe realizarse en la unidad
C:\ para efectos de este tutorial. El link de versione es:
http://code.stephenmorley.org/articles/xampp-version-history-apache-mysql-php/

CONFIGURACIN EN EL EQUIPO LOCAL (MASTER)


7. Abrir el archivo "my.cnf" de la instalacin local de MySQL, localizando las lneas de cdigo
"log-bin" y del "server-id", descomentarlas quedando de la siguiente manera:
log-bin= mysql-bin
server-id= 1
(Debe reiniciarse el MySQL al finalizar la modificacin)

8. Crear un usuario para replicar a los esclavos mediante la sentencia:


GRANT {permisos} ON *.* TO '{usuario}'@'{ip_esclavo}'
IDENTIFIED BY '{contrasea}';
Donde reemplazando los valores {usuario} por replicador, {contrasea} por 1234 y
{permisos} por REPLICATION SLAVE la sentencia nos queda as:
GRANT REPLICATION SLAVE ON *.* TO 'replicador'@'%' IDENTIFIED
BY '1234';

9.

Crear la base de datos a replicar con el nombre Replicacion y con una sola tabla llamada
Mascotas
CREATE DATABASE Replicacion;
USE Replicacion;
CREATE TABLE Mascotas (
id INT NOT NULL AUTO_INCREMENT,
Nombre VARCHAR(80) NOT NULL,
Edad INT,
PRIMARY KEY (id)
);
INSERT INTO mascotas VALUES
(1,'Max',2),(2,'Firulais',2),(3,'Manchas',2),(4,'Perrochito',
2);

10. Crear el respaldo de la base de datos para copiarla al ESCLAVO (es necesario abrir en
modo Administrador el smbolo del sistema)
mysqldump -u root -p replicacion>c:\respaldo.sql

11. Obtener los datos del "master_log_file" y "master_log_pos" para permitir la sincronizacin
de los ESCLAVOS mediante el comando:
mysql> SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+
| File
| Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |
98 |
|
|
+------------------+----------+--------------+------------------+

Donde:
master_log_file = mysql-bin.000001
master_log_pos = 98

CONFIGURACIN EN EL EQUIPO VIRTUAL (ESCLAVO) con WINDOWS XP


12. Abrir el archivo "my.cnf" de la instalacin local de MySQL para modificar la lnea de cdigo
"server-id" a 2 quedando de la siguiente manera:
server-id= 2
(Debe reiniciarse el MySQL al finalizar la modificacin)

13. Copiar el respaldo de la base de datos creado en el paso 10 C:\respaldo.sql" a la carpeta


C:\ del equipo VIRTUAL.

14. Crear la base de datos llamada replicacion


CREATE DATABASE replicacion;

15. Recuperar el respaldo de la base de datos


mysql -u root -p replicacion<c:\respaldo.sql

16. Detener el servicio en el ESCLAVO


stop SLAVE;

17. Conectar el ESCLAVO al MASTER con los datos generados en pasos anteriores
Datos necesarios:
master_host = {direccin IP del master} Ver en paso 5
master_user= {nombre de usuario que se conectar en el master} Ven en paso 8
master_password={contrasea del usuario} Ven en paso 8
master_log_file= {nombre del log binary} Ven en paso 11
master_log_pos= {posicin del log binary} Ven en paso 11
Reemplazando en la sintaxis los valores:

CHANGE MASTER TO master_host="192.168.56.1",


master_user="replicador", master_password='1234',
master_log_file='mysql-bin.000001', master_log_pos=98;

18. Volver a levantar el servicio


start SLAVE;

PROBANDO LA REPLICACIN

19. Insertar desde la computadora LOCAL (MASTER) una nueva mascota en la base de datos
Replicacion e inmediatamente mostrar los registros existentes con el comando SELECT.
USE Replicacion;
INSERT INTO Mascotas (Nombre, Edad) VALUES (Nueva
mascota,10);
SELECT * FROM Mascotas;

20. Ir a la mquina VIRTUAL (ESCLAVO) y verificar si en verdad se ha replicado la ltima accin


sobre el MASTER mediante el comando SELECT

Bibliografa

http://manuales.guebs.com/mysql-5.0/replication.html

https://www.youtube.com/watch?v=VcqLsXKF2Ho

S-ar putea să vă placă și