Réinitialiser des abonnements

S’applique à :SQL ServerAzure SQL Managed Instance

La réinitialisation d’un abonnement consiste à appliquer un nouvel instantané d’un ou plusieurs articles à un ou plusieurs abonnés. La réplication transactionnelle et la réplication par capture instantanée permettent de réinitialiser chaque article individuellement. La réplication de fusion nécessite la réinitialisation de tous les articles. Vous ne pouvez pas réinitialiser les nœuds dans une topologie de réplication transactionnelle pair-à-pair. Pour s’assurer qu’un nœud possède une nouvelle copie des données, restaurez une sauvegarde au niveau du nœud. Une réinitialisation se produit pour l'une de ces deux raisons :

  • Vous marquez explicitement un abonnement en vue d’une réinitialisation.

  • Vous effectuez une action, par exemple une modification de propriété, qui nécessite une réinitialisation. Pour plus d’informations sur les actions qui nécessitent une réinitialisation, consultez Modifier les propriétés des publications et des articles.

Dans les deux cas, l'instantané le plus récent est appliqué à l'Abonné lors de l'exécution suivante de l'Agent de distribution ou de l'Agent de fusion. Pour la réplication par instantané et la réplication transactionnelle, lors d'une réinitialisation, toutes les modifications effectuées chez l'Abonné, mais pas encore synchronisées avec le Serveur de publication, sont écrasées lors de l'application du nouvel instantané.

Pour la réplication de fusion, vous pouvez choisir d’importer toutes les modifications de données depuis l’Abonné avant d’appliquer l’instantané. Toutes les modifications de schéma en attente provenant du serveur de publication sont appliquées à l'Abonné, puis toutes les modifications qui ont été effectuées sur l'Abonné depuis la dernière synchronisation sont propagées vers le serveur de publication avant que l'instantané soit réappliqué. Ce fonctionnement est contrôlé par les propriétés upload_first et automatic_reinitialization_policy ; pour plus d'informations, consultez Reinitialize a Subscription. Si vous marquez un abonnement pour le réinitialiser à l’aide de SQL Server Management Studio ou du Moniteur de réplication, une option vous est proposée dans la boîte de dialogue Réinitialiser les abonnements pour télécharger d’abord les modifications.

Important

Si vous ajoutez, supprimez ou modifiez un filtre paramétré dans une publication de fusion, les modifications en attente chez l'Abonné ne peuvent pas être téléversées vers le Serveur de publication pendant la réinitialisation. Si vous voulez télécharger les modifications en attente, synchronisez tous les abonnements avant de modifier le filtre.

Si vous précisez qu’aucun instantané initial ne devait être appliqué à l’Abonné lors de la création de l’abonnement, et que vous marquez ensuite l’abonnement pour la réinitialisation, un instantané n’est pas appliqué. Pour plus d’informations, consultez Initialiser un abonnement transactionnel sans instantané.

Pour réinitialiser un abonnement

Pour réinitialiser tous les articles d’un abonnement, utilisez SQL Server Management Studio, des procédures stockées ou Replication Management Objects (RMO). Pour réinitialiser chaque article dans des publications d'instantané et des publications transactionnelles, vous devez utiliser des procédures stockées. Pour plus d’informations, voir Reinitialize a Subscription.