Unas de las cosas más deseadas es la replicación de
información con la intención de tener la información fresca en otro servidor en
caso de problemas con el servidor principal, para este ejemplo vamos a
configurar una replicación maestro-esclavo, tomando como ejemplo:
Servidor Master, IP: 180.180.1.8
|
Servidor Slave, IP: 180.180.1.9
|
1.1. Configuración del Servidor Master
-
Editamos el archivo my.cnf agregando las
siguientes líneas:
Server-id=1
Log-bin=mysql-bin
|
-
Reiniciamos el MySQL: sudo service mysql restart
-
Entramos al MySQL para crear el usuario que hará
la replicación: CREATE USER replicador
IDENTIFIED BY ‘lacontraseña’;
-
Le damos los permisos necesarios: GRANT REPLICATION SLAVE ON *.* TO
‘replicador’@’%’ IDENTIFIED BY ‘lacontraseña’; FLUSH PRIVILEGES;
-
Ya configurado el servidor debemos bloquear las
tablas para crear una copia de la(s) base(s) de dato(s):
-
Bloquear tablas: FLUSH
TABLES; FLUSH TABLES WITH READ LOCK; SHOW MASTER STATUS;
-
Al ejecutar SHOW MASTER STATUS el MySQL podrá
mostrarnos la siguiente información, tal información es importante y se debe
anotar tanto File como Position (pueden variar):
-------------------+----------+--------------+------------------+
| File |
Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |
664 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
|
-
Creamos la copia de del master con la
herramienta que se desee (Workbench, mysqldump etc) lo importante es que TODA
la base de datos sea copiada.
1.2. Configuración del Servidor Slave
-
Editamos el archivo my.cnf agregando las siguientes
líneas:
Server-id=2
Relay-log=mysqld-relay-bin
|
-
Reiniciamos el MySQL: sudo service mysql restart
-
Restauramos en este servidor la copia hecha del
Master.
Dentro del MySQL ejecutamos la
instrucción siguiente:
CHANGE MASTER TO
MASTER_HOST=’180.180.1.8’,
MASTER_USER=’replicador’,
MASTER_PASSWORD=’lacontraseña’,
MASTER_LOG_FILE=’mysql-bin.000001’,
MASTER_LOG_POS=664, MASTER_PORT=3306; |
-
Iniciamos la replicación: START SLAVE;
Desbloqueamos las tablas dentro
del servidor Master UNLOCK TABLES;
Y podemos verificar el estatus del
master con SHOW MASTER STATUS;
Y podemos verificar el estatus del
slave con SHOW SLAVE STATUS\G;
No hay comentarios:
Publicar un comentario