Replicación nativa de MySQL en varios servidores

Los pasos para configurar la replicación de MySQL no eran muy complicados, ¿recuerdas Configurar replicación en MySQL?

Ahora si quisieramos que la replicación se haga en varios servidores. Básicamente la historia es la misma en cuanto a la creación de usuarios y los seteos para el log binario.

¿Qué cambia? ¿Que debo agregar? ¿Que recaudos debo tomar?

Vayamos por parte:

Asumiendo que tenemos resuelto el tema de los usuarios y configurados los logs binarios, esto es lo que deberiamos hacer para configurar la replicación nativa en un total de cuatro servidores:

replicacion

[CODE]
[…]
[mysqld]
server-id = 1
replicate-same-server-id = 0
auto-increment-increment = 4
auto-increment-offset = 1

master-host = 192.168.0.4
master-user = usuario_slave_para_s1
master-password = password_usuario_slave_para_s1
master-connect-retry = 60
replicate-do-db = example
[…]
[/CODE]

En Linux:/etc/init.d/mysql restart

[CODE]
[…]
[mysqld]
server-id = 2
replicate-same-server-id = 0
auto-increment-increment = 4
auto-increment-offset = 2

master-host = 192.168.0.1
master-user = usuario_slave_para_s2
master-password = password_usuario_slave_para_s2
master-connect-retry = 60
replicate-do-db = example
[…]
[/CODE]

En Linux:/etc/init.d/mysql restart

[CODE]
[…]
[mysqld]
server-id = 3
replicate-same-server-id = 0
auto-increment-increment = 4
auto-increment-offset = 3

master-host = 192.168.0.2
master-user = usuario_slave_para_s3
master-password = password_usuario_slave_para_s3
master-connect-retry = 60
replicate-do-db = example
[…]
[/CODE]

En Linux:/etc/init.d/mysql restart

[CODE]
[…]
[mysqld]
server-id = 4
replicate-same-server-id = 0
auto-increment-increment = 4
auto-increment-offset = 4

master-host = 192.168.0.3
master-user = usuario_slave_para_s4
master-password = password_usuario_slave_para_s4
master-connect-retry = 60
replicate-do-db = example
[…]
[/CODE]

En Linux:/etc/init.d/mysql restart

Omitiremos el paso de igualar las bases de datos, pues daremos por supuesto que se encuentran igualadas o bien que se trata de una instalación de cero.

Vía: HowToForge

Más información en ONLamp.com

Tags: , , , ,


  • Rubén

    Qué buena entrada Luciano, gracias porque a veces me da mucha flojera entrar en el howtoforge por aquello de tener que estar traduciendo jeje.

    Reply

  • Ray

    Luciano,

    Esto es exactamente lo que estaba buscando, ya que necesito replicar datos en varios servidores.

    Muchas gracias por compartir esto con todos !!!

    Saludos

    Reply

  • Edwin

    Luciano,

    Que pasa si uno de los servidores (por X razon) deja de funcionar… y luego entra en produccion nuevamente, sera que se “sincroniza” o se actualizan todos los datos automaticamente?

    Saludos

    Reply

  • Fernando Real

    Tengo 3 equipos server-A, server-B y server-C donde server-A replicar tabla uno en server-C mientras server-B replicar tabla dos en server-C. Mucho agradeceré el que me puedas ayudar a resolver este problema.
    De antemano gracias.

    Reply

  • Monica

    Hola,
    Tengo mi BD en Ubuntu, pero quiero replicar algunas tablas en una BD Mysql de Windows, Es posible hacer eso? que consideraciones debo tener?

    Gracias por su ayuda

    Reply

    • Luciano Post author

      Por supuesto, es posible, pues la replicación se implementa a través de hilos que se comunican vía TCP/IP, por lo tanto, no hay ningùn inconveniente para hacerlo.

      Reply

  • Carlos

    Hola, tengo estas preguntas:
    Porque en la configuración del servidor 1, se le coloca una direccion ip del masterhost al servidor 4?
    Esta configuración de replicación se puede trabajar en cualquier servidor que los datos se actualizan en todos los servidores?

    Saludos cordiales.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.