Procédure : afficher et résoudre les conflits de données pour les publications de fusion (SQL Server Management Studio)

Les conflits de réplication de fusion sont résolus en fonction de l'outil de résolution spécifié pour chaque article. Par défaut, les conflits sont résolus sans que l'utilisateur doive intervenir. Mais il est possible de les afficher et de modifier le résultat de la résolution dans l'outil de résolution des conflits de réplication de Microsoft.

Les données de conflit sont disponibles dans cet outil pendant la durée définie comme période de rétention des conflits (par défaut 14 jours). Pour définir la période de rétention des conflits :

Par défaut, les informations sur les conflits sont stockées dans les emplacements suivants :

  • Sur le serveur de publication et sur l'Abonné, si le niveau de compatibilité est égal ou supérieur à 90RTM. Pour plus d'informations sur le niveau de compatibilité, consultez la section « Niveau de compatibilité des publications de fusion » dans la rubrique Utilisation de plusieurs versions de SQL Server dans une topologie de réplication.

  • Sur le serveur de publication, si le niveau de compatibilité est inférieur à 80RTM.

  • Sur le serveur de publication si les Abonnées exécutent SQL Server Compact 3.5 SP1. Les données conflictuelles ne peuvent pas être stockées sur les Abonnés SQL Server Compact 3.5 SP1.

Le stockage des informations de conflits est contrôlé par la propriété de publication conflict_logging. Pour plus d'informations, consultez sp_addmergepublication (Transact-SQL) et sp_changemergepublication (Transact-SQL).

Il est également possible de résoudre les conflits de façon interactive au cours de la synchronisation à l'aide du programme de résolution interactif Microsoft. Le programme de résolution interactif est disponible via le Gestionnaire de synchronisation Microsoft Windows. Pour plus d'informations, consultez Procédure : synchroniser un abonnement à l'aide du Gestionnaire de synchronisation Windows (Windows Synchronization Manager).

Pour afficher et résoudre les conflits des publications de fusion

  1. Connectez-vous au serveur de publication (ou à l'Abonné, le cas échéant) dans MicrosoftSQL Server Management Studio puis développez le nœud du serveur.

  2. Développez le dossier Réplication puis le dossier Publications locales.

  3. Cliquez avec le bouton droit sur la publication dont vous souhaitez afficher les conflits puis cliquez sur Afficher les conflits.

    [!REMARQUE]

    Si vous spécifiez une valeur 'subscriber' pour la propriété conflict_logging, l'option de menu Afficher les conflits n'est pas disponible. Pour afficher les conflits, démarrez ConflictViewer.exe à partir de l'invite de commandes. Par défaut, ConflictViewer.exe se trouve dans le répertoire suivant : Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE. Pour obtenir la liste des paramètres de démarrage valides, exécutez ConflictViewer.exe -?.

  4. Dans la boîte de dialogue Sélectionner la table de conflits, sélectionnez une base de données et une table dont il faut afficher les conflits.

  5. Dans l'outil de résolution des conflits de réplication, vous pouvez effectuer les actions suivantes :

    • Filtrer des lignes avec les boutons situés à droite de la grille supérieure.

    • Sélectionner une ligne dans la grille supérieure pour afficher des informations sur cette ligne dans la grille inférieure.

    • Sélectionner une ou plusieurs lignes dans la grille supérieure puis cliquer sur Supprimer, ce qui équivaut à cliquer sur le bouton Soumettre le gagnant (sans modifier les données).

    • Cliquer sur le bouton des propriétés () pour afficher des informations plus détaillées sur une colonne concernée par un conflit.

    • Modifier des données dans la colonne Gagnant du conflit ou Perdant du conflit avant de soumettre les données (les données sont en lecture seule si la colonne est grisée).

    • Cliquer sur Soumettre le gagnant pour accepter la ligne désignée comme gagnante du conflit.

    • Cliquer sur Soumettre le perdant pour substituer la résolution et propager la valeur désignée comme perdante du conflit à tous les nœuds de la topologie.

    • Sélectionner l'option Consigner les détails de ce conflit pour enregistrer les données de conflit dans un journal. Pour spécifier l'emplacement du fichier, pointez sur le menu Affichage puis cliquez sur Options. Entrez une valeur ou cliquez sur le bouton Parcourir (...) pour accéder au fichier approprié. Cliquez sur OK pour fermer la boîte de dialogue Options.

  6. Fermer l'outil de résolution de conflits.