# Configuración Maestro y Esclavo de MySQL

- Link: https://binariocero.com/mysql/configuracion-maestro-y-esclavo-de-mysql
- Published: 2024-05-13T11:48:22+02:00
- Author: Juan José Fernández Durán

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

Cómo configurar dos servidores MySQL, uno como maestro y otro como esclavo. Este
es un proceso detallado, así que asegúrate de seguir cada paso con atención.

### Configuración del Servidor Maestro:

 1. **Instalación de MySQL**:
 2.  * Instala MySQL en el servidor que deseas configurar como maestro. Puedes usar
       el gestor de paquetes de tu sistema operativo o descargar MySQL desde el sitio
       web oficial.
 3. **Configuración de MySQL**:
 4.  * Edita el archivo de configuración de MySQL (suele ser `my.cnf` o `mysql.cnf`).
     * Asegúrate de que la línea `bind-address` esté configurada para escuchar en la
       dirección IP del servidor y no solo en `localhost`.
     * Habilita el registro binario añadiendo la siguiente línea al archivo de configuración:
       `
       log-bin=mysql-bin`
 5. **Creación del Usuario de Replicación**:
 6.  * Accede a MySQL como usuario `root`.
     * Crea un usuario específico para la replicación con privilegios adecuados:
       `CREATE
       USER 'replicator'@'%' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.*
       TO 'replicator'@'%'; FLUSH PRIVILEGES;`
 7. **Reinicia el Servicio MySQL**:
 8.  * Reinicia el servicio MySQL para aplicar los cambios en la configuración.

### Configuración del Servidor Esclavo:

 1.  **Instalación de MySQL**:
 2.   * Instala MySQL en el servidor que deseas configurar como esclavo, siguiendo 
        los mismos pasos que en el servidor maestro.
 3.  **Configuración de MySQL**:
 4.   * Edita el archivo de configuración de MySQL para que coincida con la configuración
        del servidor maestro.
      * Asegúrate de que la línea `bind-address` esté configurada para escuchar en 
        la dirección IP del servidor y no solo en `localhost`.
 5.  **Configuración de Replicación**:
 6.   * Accede a MySQL como usuario `root`.
      * Configura el servidor esclavo para conectarse al servidor maestro y comenzar
        la replicación:
        `CHANGE MASTER TO ``MASTER_HOST = 'direccion_ip_servidor_maestro',``
        MASTER_USER = 'replicator', ``MASTER_PASSWORD = 'password', ``MASTER_LOG_FILE
        = 'nombre_del_archivo_binario', ``MASTER_LOG_POS = posicion_del_archivo_binario;`
        Asegúrate de reemplazar `'direccion_ip_servidor_maestro'`, `'password'`, `'
        nombre_del_archivo_binario'` y `posicion_del_archivo_binario` con los valores
        adecuados.
 7.  **Iniciar la Replicación**:
 8.   * Inicia la replicación en el servidor esclavo:
        `START SLAVE;`
 9.  **Verificar el Estado de la Replicación**:
 10.  * Puedes verificar el estado de la replicación ejecutando:
        `SHOW SLAVE STATUS\
        G `Asegúrate de que `Slave_IO_Running` y `Slave_SQL_Running` estén configurados
        como `Yes`.

Una vez completados estos pasos, deberías tener una configuración de replicación
maestro-esclavo funcionando correctamente entre tus dos servidores MySQL. Asegúrate
de realizar pruebas adicionales para garantizar que la replicación esté funcionando
como se espera.
