Tous les produits
Search
Centre de documentation

Data Transmission Service:Vérifications du journal binaire de la base de données source

Dernière mise à jour :Aug 10, 2026

Lorsque vous démarrez une tâche de migration incrémentielle de données entre des bases de données MySQL, Data Transmission Service (DTS) effectue une vérification préalable des paramètres du journal binaire sur la base de données source. Cette rubrique détaille chaque élément de vérification du journal binaire et explique comment résoudre les échecs.

Activation du journal binaire

Cette vérification permet de s'assurer que la journalisation binaire est activée sur la base de données source. En cas d'échec, appliquez la procédure suivante pour résoudre le problème.

Solution :

  1. Connectez-vous au serveur qui héberge votre base de données MySQL auto-gérée.

  2. Utilisez vim pour modifier les paramètres suivants dans le fichier de configuration my.cnf.

    Remarque

    Le chemin par défaut de my.cnf est /etc/my.cnf. Votre chemin réel peut différer.

    log_bin=mysql_bin
    binlog_format=row
    server_id=2 # An integer greater than 1. The value is for example purposes only.
    binlog_row_image=full # Required if the source database is MySQL 5.6 or later.
  3. Redémarrez le service MySQL :

    /etc/init.d/mysqld restart
    Remarque

    D'autres méthodes de redémarrage peuvent s'appliquer selon votre configuration.

  4. Connectez-vous à votre base de données source MySQL auto-gérée et exécutez l'instruction SQL suivante pour vérifier que la journalisation binaire est activée.

    show variables like '%log_bin%';

    Résultat attendu :

    MariaDB [pro1]> show variables like '%log_bin%';
    +----------------------------------+-------+
    | Variable_name                    | Value |
    +----------------------------------+-------+
    | log_bin                          | ON    |
    | log_bin_trust_function_creators  | OFF   |
    | sql_log_bin                      | ON    |
    +----------------------------------+-------+
    3 rows in set (0.00 sec)
  5. Exécutez à nouveau la vérification préalable DTS.

Format du journal binaire

Cette vérification permet de s'assurer que le format de journalisation binaire de la base de données source est défini sur ROW. En cas d'échec, appliquez la procédure suivante pour résoudre le problème.

Solution :

  1. Connectez-vous au serveur qui héberge votre base de données MySQL auto-gérée.

  2. Dans le fichier de configuration my.cnf, définissez le paramètre binlog_format sur ROW.

    Remarque

    Le chemin par défaut de my.cnf est /etc/my.cnf. Votre chemin réel peut différer.

    log_bin=mysql_bin
    binlog_format=row # Set the binary logging format to row.
    server_id=2 # An integer greater than 1. The value is for example purposes only.
    binlog_row_image=full # Required if the source database is MySQL 5.6 or later.
  3. Redémarrez le service MySQL :

    /etc/init.d/mysqld restart
    Remarque

    D'autres méthodes de redémarrage peuvent s'appliquer selon votre configuration.

  4. Connectez-vous à votre base de données source MySQL auto-gérée et exécutez l'instruction SQL suivante pour confirmer que le format de journalisation binaire est bien ROW.

    show variables like "%binlog_format%";

    Résultat attendu :

    MariaDB [(none)]> show variables like "%binlog_format%";
    +---------------+-------+
    | Variable_name | Value |
    +---------------+-------+
    | binlog_format | ROW   |
    +---------------+-------+
    1 row in set (0.01 sec)
  5. Exécutez à nouveau la vérification préalable DTS.

Disponibilité du journal binaire

Cette vérification permet de s'assurer qu'aucun fichier de journal binaire n'a été supprimé de la base de données source. Un échec indique que la séquence du journal binaire est incomplète. En cas d'échec, appliquez la procédure suivante pour résoudre le problème.

Solution :

  1. Dans la boîte de dialogue Precheck, cliquez sur l'icône Info située à côté de l'élément de vérification de la disponibilité des fichiers de journal binaire.

  2. Dans la boîte de dialogue View More, identifiez la cause de l'échec et notez les noms des fichiers de journal binaire manquants.

  3. Évaluez l'impact des fichiers de journal binaire manquants et choisissez l'action appropriée.

    • Si le fichier de journal binaire manquant n'est pas critique et que ses données peuvent être ignorées, connectez-vous à votre base de données source MySQL auto-gérée et exécutez l'instruction SQL suivante pour purger tous les fichiers de journal binaire antérieurs au fichier spécifié :

      PURGE BINARY LOGS TO '[$Binlog_Filename]';
      Remarque

      [$Binlog_Filename] correspond au premier fichier de journal binaire à conserver. Par exemple, si mysql_bin.000003 est manquant, utilisez mysql_bin.000004. Cela purge tous les fichiers antérieurs à mysql_bin.000004.

    • Si le fichier manquant est critique, contactez votre administrateur de base de données pour le restaurer.

  4. Exécutez à nouveau la vérification préalable DTS.

Paramètre binlog_row_image

Cette vérification s'applique uniquement aux versions MySQL 5.6 et ultérieures. Elle permet de s'assurer que le paramètre binlog_row_image de la base de données source est défini sur full. Un échec indique que le journal binaire n'enregistre pas les images complètes des lignes. En cas d'échec, appliquez la procédure suivante pour résoudre le problème.

Solution :

  1. Connectez-vous au serveur qui héberge votre base de données MySQL auto-gérée.

  2. Dans le fichier de configuration my.cnf, définissez le paramètre binlog_row_image sur full.

    Remarque

    Le chemin par défaut de my.cnf est /etc/my.cnf. Votre chemin réel peut différer.

    log_bin=mysql_bin
    binlog_format=row
    server_id=2 # An integer greater than 1. The value is for example purposes only.
    binlog_row_image=full # Required if the source database is MySQL 5.6 or later.
  3. Redémarrez le service MySQL :

    /etc/init.d/mysqld restart
    Remarque

    D'autres méthodes de redémarrage peuvent s'appliquer selon votre configuration.

  4. Connectez-vous à la base de données source et exécutez l'instruction SQL suivante pour vérifier que binlog_row_image est bien défini sur FULL.

    show variables like "binlog_row_image";
  5. Exécutez à nouveau la vérification préalable DTS.