Share via


Procédure : gérer les partitions d'une publication de fusion avec des filtres paramétrables (programmation Transact-SQL de la réplication)

Les filtres de lignes paramétrables peuvent être utilisés pour générer des partitions qui ne se chevauchent pas. Ces partitions peuvent être restreintes afin qu'un seul abonnement puisse recevoir une partition donnée. Dans ces cas, un grand nombre d'abonnés se traduit par un nombre élevé de partitions, ce qui requiert ensuite un nombre égal de captures instantanées partitionnées. Pour plus d'informations, consultez Filtres de lignes paramétrés. Pour mieux gérer une publication avec des filtres paramétrables, vous pouvez énumérer par programmation les partitions existantes à l'aide de procédures stockées de réplication. Vous pouvez également créer et supprimer des partitions existantes. Vous pouvez obtenir les informations suivantes sur les partitions existantes :

  • Comment une partition est filtrée (SUSER_SNAME (Transact-SQL) ou HOST_NAME (Transact-SQL)).

  • Le nom du travail qui génère une capture instantanée partitionnée.

  • La dernière fois qu'un travail de capture instantanée partitionnée a été exécuté.

Tandis que la deuxième partie de la capture instantanée bipartite peut être générée à la demande lors de l'initialisation d'un nouvel abonnement, les procédures suivantes permettent de contrôler comment cette capture instantanée est générée et de la pré-générer dans les cas les plus pratiques. Pour plus d'informations, consultez Captures instantanées des publications de fusion avec des filtres paramétrés.

Notes

Lorsqu'une publication a paramétré des filtres qui génèrent des abonnements avec des partitions ne se chevauchant pas, vous devez effectuer les opérations suivantes quand un abonnement a été perdu et doit être recréé : supprimez la partition à laquelle s'abonner, recréez l'abonnement, puis recréez la partition. La réplication génère des scripts de création pour les partitions d'Abonné existantes lors de la génération d'un script de création de publication. Pour plus d'informations, consultez Création de scripts de réplication.

Pour consulter les informations sur les partitions existantes

  • Dans la base de données de publication du serveur de publication, exécutez sp_helpmergepartition (Transact-SQL). Spécifiez le nom de la publication pour @ publication. (Facultatif) Spécifiez @suser_sname ou @host_name pour retourner uniquement les informations basées sur un critère de filtre unique.

Pour définir une nouvelle partition et générer une nouvelle capture instantanée partitionnée

  1. Dans la base de données de publication du serveur de publication, exécutez sp_addmergepartition (Transact-SQL). Spécifiez le nom de la publication pour @publication et la valeur paramétrable qui définit la partition pour l'un des éléments suivants :

  2. Créez et initialisez la capture instantanée paramétrable de cette nouvelle partition. Pour plus d'informations, consultez Procédure : créer une capture instantanée pour une publication de fusion avec des filtres paramétrables (programmation Transact-SQL de la réplication).

Pour supprimer une partition

  • Dans la base de données de publication du serveur de publication, exécutez sp_dropmergepartition (Transact-SQL). Spécifiez le nom de la publication pour @publication et la valeur paramétrable qui définit la partition pour l'un des éléments suivants :

    Le travail de capture instantanée et les fichiers de capture instantanée de la partition sont également supprimés.