Estoy en el proceso de migrar 2 servidores DB (maestro y esclavo) a dos nuevos servidores DB (maestro y esclavo)
DB1 - Master (producción)
DB2 - Esclavo (producción)
DB3 - Nuevo maestro
DB4 - Nuevo esclavo
Actualmente tengo la replicación configurada como:
DB1 -> DB2
DB3 -> DB4
Para replicar los datos de producción en los nuevos servidores, me gustaría "encadenarlos" para que se vea así:
DB1 -> DB2 -> DB3 -> DB4
es posible? Cuando ejecuto show master status;
en DB2 (el esclavo de producción), la posición de binlog nunca parece cambiar:
+ ------------------ + ---------- + -------------- + ---- -------------- + El | Archivo | Puesto | Binlog_Do_DB | Binlog_Ignore_DB | + ------------------ + ---------- + -------------- + ---- -------------- + El | mysql-bin.000020 | 98 El | El | + ------------------ + ---------- + -------------- + ---- -------------- +
Estoy un poco confundido sobre por qué la posición del binlog no está cambiando en DB2, idealmente será el maestro de DB3.
fuente
Sí, es posible :) Esto se llama replicación "Master with Relay Slave" y hay muchos documentos al respecto en la red.
Te recomiendo que eches un vistazo a la documentación oficial aquí .
Por cierto, también eche un vistazo a estas diapositivas . Tienen algunos consejos sobre topologías de replicación.
Espero que esto ayude.
fuente
Sí, puede conectar en cadena servidores MySQL, incluso puede hacer una replicación circular con dos o más máquinas. solo recuerde habilitar binloging en esclavo que también actúa como maestro.
fuente
Sí, es posible. Siendo realistas, necesita una nueva instantánea de DB2 para construir DB3. En ese punto, si tiene una buena posición, puede usarlo para DB4 o tomar otra instantánea de DB3.
No olvide establecer un único
server_id
para cada servidor.High Performance MySQL es un gran libro para hacer referencia a una administración MySQL más avanzada.
fuente
¿Por qué no simplemente agregar DB3 como un nuevo esclavo y luego promoverlo a maestro cuando esté listo para hacer el cambio? Esto le daría el beneficio adicional temporal de tener múltiples esclavos, y reduciría o eliminaría su tiempo de inactividad.
fuente