Base de connaissances · MySQL

Comment mettre en miroir des bases de données MySQL

Dernière mise à jour : 2020-04-05

Mise en miroir de bases de données MySQL avec mysqldump
Nous utiliserons mysqldump pour synchroniser les bases de données de votre serveur miroir et de votre serveur de production.

  1. Avant d'exécuter mysqldump, vous devrez créer une base de données MySQL vide sur le serveur miroir/de destination
  2. Créez un utilisateur de base de données et attribuez-lui des droits sur la base de données ci-dessus (Dans le cas d'une mise en miroir, vous pouvez utiliser le même nom et les mêmes identifiants que sur le serveur source/de production).
  3. Connectez-vous au serveur de destination via SSH à l'aide d'un client SSH tel que Putty ou WinSCP.
  4. Si vous utilisez un panneau de contrôle sur le serveur source/de production, assurez-vous que les connexions MySQL distantes vers la base de données source sont autorisées (Dans cPanel, ajoutez % à l'emplacement cPanel > Bases de données > MySQL distant > Ajouter un hôte d'accès)
  5. Testez que les connexions MySQL (port 3306) vers la base de données source sont ouvertes (elles peuvent être bloquées par le pare-feu de la source ou de la destination). Dans la fenêtre de la console SSH, saisissez
    mysql -u<span style="color:#0000ff;"><em>productionDBname</em></span> -p -P 3307 -h <em><span style="color:#0000ff;">productionIP</span></em>
  6. Si votre base de données est volumineuse ou si votre connexion réseau est lente ou de mauvaise qualité, exécutez la commande suivante dans la fenêtre de la console SSH
    screen
  7. Dans un éditeur de texte, construisez maintenant la commande de synchronisation en suivant la syntaxe ci-dessous, après avoir remplacé bleus et verts les termes par les valeurs réelles ;

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

    1. productionIP - l'adresse IP de votre serveur de production/source serveur
    2. productionMySQLuser - l'utilisateur MySQL de votre serveur de production/source serveur
    3. productionPassword - le mot de passe de votre utilisateur MySQL sur votre serveur de production/source serveur
      (saisissez votre mot de passe immédiatement après "-p", sans espace)
    4. productionDBname - nom de la base de données de production/source du serveur que vous souhaitez sauvegarder
    5. mirrorIP - l'adresse IP de votre serveur miroir/de destination serveur
    6. mirrorMySQLuser - l'utilisateur MySQL de votre serveur miroir/de destination (vous devrez créer cet utilisateur via le cPanel de votre serveur miroir)
    7. mirrorPassword - le mot de passe de l'utilisateur MySQL de votre serveur miroir/de destination serveur
    8. mirrorDBname - la base de données de votre serveur miroir vers laquelle vous effectuez la sauvegarde/de destination serveur (la base de données de destination doit être créée avant d'exécuter mysqldump)

  8. Enfin, dans la fenêtre de la console SSH avec screen en cours d'exécution, collez la commande de synchronisation avec les valeurs réelles, puis appuyez sur Entrée.
Une fois le processus terminé, votre base de données de destination sera un miroir de la base de données source.

← Tous les articles de la base de connaissances

Tell us what you need

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