Initialisation d'une réplication de fusion sans instantané

Notes

Cette fonctionnalité sera supprimée dans une prochaine version de Microsoft SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité.

Par défaut, un abonnement à une publication de fusion est initialisé avec un instantané, qui est généré par l'Agent d'instantané et appliqué par l'Agent de fusion. Dans certains scénarios, vous pouvez initialiser un abonnement par le biais d'une autre méthode, notamment une sauvegarde. La réplication de fusion prend en charge l'initialisation des abonnements sans instantané pour les publications filtrées et non filtrées. L'option est plus souvent utilisée avec des publications non filtrées et avec celles qui utilisent des filtres statiques. Les publications qui utilisent des filtres paramétrés sont généralement initialisées avec un instantané pour la partition d'un Abonné. Pour plus d'informations, consultez Captures instantanées des publications de fusion avec des filtres paramétrés.

Si possible, initialisez les abonnements avec un instantané. L'initialisation d'un abonnement sans instantané est déconseillée, en particulier dans les conditions suivantes :

  • Lorsque vous utilisez le suivi au niveau des colonnes ou le filtrage vertical ou que vous apportez des modifications au schéma sur le serveur de publication. Cette situation peut conduire à une non-convergence au moment où vous initialisez un abonnement sans instantané.

  • Lors de l'utilisation de la synchronisation Web, les fichiers d'instantanés sont répliqués sur l'Abonné mais ne sont pas utilisés.

  • Lorsque vous devez réinitialiser l'abonnement.

  • Lorsque vous avez besoin des avantages que procurent les partitions précalculées en termes de performances.

Pour initialiser un abonnement de fusion à partir d'une sauvegarde ou à l'aide d'une autre méthode, procédez selon les étapes suivantes :

  1. Ajoutez une colonne uniqueidentifier avec les attributs de colonne rowguid et NOT NULL aux tables qui seront utilisées dans la réplication de fusion.

  2. Effectuez une sauvegarde de la base de données que vous utiliserez pour initialiser l'Abonné.

  3. Créez une publication et générez l'instantané pour la publication. Même si le schéma et les données des tables publiées dans l'instantané ne seront pas utilisés, l'instantané est néanmoins nécessaire car il comprend des objets et des métadonnées système requis par la réplication. Ces objets et ces métadonnées sont copiés vers l'Abonné lors de la synchronisation initiale.

  4. Restaurez la sauvegarde sur l'Abonné ou copiez les données en utilisant une autre méthode. Si vous restaurez une sauvegarde, ne spécifiez pas l'option KEEP_REPLICATION. Cette option est conçue pour conserver les paramètres de réplication lors de la restauration ; la sauvegarde provenant du serveur de publication, vous voulez donc supprimer les paramètres de l'Abonné dans la base de données. La base de données restaurée aura les paramètres nécessaires de l'Abonné après la synchronisation initiale.

  5. Créez un abonnement, en spécifiant qu'il sera initialisé manuellement.

    Notes

    Si un abonnement est initialisé sans utiliser un instantané, le compte sous lequel le service SQL Server s'exécute sur le serveur de publication doit avoir les autorisations de lecture sur le dossier d'instantanés du serveur de distribution. Pour plus d'informations sur les autorisations, consultez Modèle de sécurité de l'Agent de réplication.

    Pour plus d'informations, consultez :

  6. Effectuez une synchronisation initiale avec l'Agent de fusion pour copier les objets et les métadonnées requis par la réplication. L'Abonné est maintenant synchronisé et prêt à accepter des modifications incrémentielles provenant du serveur de publication.