Base de conocimientos · MySQL

Cómo replicar bases de datos MySQL en espejo

Última actualización: 2020-04-05

Replicación de bases de datos MySQL con mysqldump
Utilizaremos mysqldump para sincronizar las bases de datos de su servidor espejo y de su servidor de producción.

  1. Antes de ejecutar mysqldump, deberá crear una base de datos MySQL vacía en el servidor espejo o de destino
  2. Cree un usuario de base de datos y asígnele permisos sobre la base de datos anterior (Si está replicando, puede utilizar el mismo nombre y las mismas credenciales que en el servidor de origen o de producción).
  3. Inicie sesión en el servidor de destino mediante SSH con un cliente SSH como Putty o WinSCP.
  4. Si utiliza un panel de control en el servidor de origen o de producción, asegúrese de que se permitan las conexiones remotas de MySQL a la base de datos de origen (En cPanel, añada % en cPanel > Databases > Remote MySQL > Add an Access host)
  5. Compruebe que las conexiones MySQL (puerto 3306) a la base de datos de origen estén abiertas (podrían estar bloqueadas en el cortafuegos de origen o de destino). En la ventana de la consola SSH, escriba
    mysql -u<span style="color:#0000ff;"><em>productionDBname</em></span> -p -P 3307 -h <em><span style="color:#0000ff;">productionIP</span></em>
  6. Si tiene una base de datos grande o una conexión de red lenta o deficiente, ejecute el siguiente comando en la ventana de la consola SSH
    screen
  7. Ahora, en un editor de texto, construya el comando de sincronización con la siguiente sintaxis, después de sustituir azul como la verde los términos por los valores reales;

    mysqldump -h productionIP -u productionMySQLuser -p'productionPassword' productionDBname | mysql -h mirrorIP -u mirrorMySQLuser -p'mirrorPassword' mirrorDBname

    1. productionIP - la dirección IP de su servidor de producción/origen servidor
    2. productionMySQLuser - el usuario de MySQL en su servidor de producción/origen servidor
    3. productionPassword - la contraseña de su usuario de MySQL en su servidor de producción/origen servidor
      (escriba su contraseña inmediatamente después de "-p", sin espacios)
    4. productionDBname - nombre de la base de datos de producción/origen del servidor de la que desea hacer una copia de seguridad
    5. mirrorIP - la dirección IP de su servidor espejo/de destino servidor
    6. mirrorMySQLuser - el usuario de MySQL en su servidor espejo/de destino (deberá crear este usuario mediante el cPanel de su servidor espejo)
    7. mirrorPassword - la contraseña del usuario de MySQL en su servidor espejo/de destino servidor
    8. mirrorDBname - la base de datos en la que realizará la copia en su servidor espejo/de destino servidor (la base de datos de destino deberá crearse antes de ejecutar mysqldump)

  8. Por último, en la ventana de la consola SSH con screen en ejecución, pegue el comando de sincronización con los valores reales y pulse Intro.
Cuando el proceso finalice, su base de datos de destino será un espejo de la base de datos de origen.

← Todos los artículos de base de conocimientos

Tell us what you need

Compare available plans or describe your workload so we can discuss a suitable starting point.