Partage via


Afficher et modifier les propriétés d’un abonnement par extraction (pull)

S’applique à : SQL Server Azure SQL Managed Instance

Cette rubrique décrit comment afficher et modifier les propriétés d’un abonnement par extraction dans SQL Server à l’aide de SQL Server Management Studio, Transact-SQL ou Replication Management Objects (RMO).

Dans cette rubrique

Utilisation de SQL Server Management Studio

Affichez les propriétés de l’abonnement par extraction à partir du serveur de publication ou de l’abonné dans la boîte de dialogue Propriétés de l’abonnement - <serveur_publication> : <base_de_données_publication>, disponible dans SQL Server Management Studio. Vous pouvez modifier des propriétés ou en afficher d'autres sur l'Abonné. Vous pouvez également afficher des propriétés à partir du serveur de publication sous l'onglet Tous les abonnements , disponible dans le moniteur de réplication. Pour plus d’informations sur le démarrage du Moniteur de réplication, consultez Démarrer le Moniteur de réplication.

Pour afficher des propriétés d'extraction d'abonnement à partir du serveur de publication dans Management Studio

  1. Connectez-vous au serveur de publication dans Management Studio, puis développez le nœud du serveur.

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

  3. Développez la publication appropriée, cliquez avec le bouton droit sur un abonnement puis cliquez sur Propriétés.

  4. Affichez les propriétés, puis cliquez sur OK.

Pour afficher et modifier des propriétés d'extraction d'abonnement à partir de l'Abonné dans Management Studio

  1. Connectez-vous à l’abonné dans Management Studio, puis développez le nœud du serveur.

  2. Développez le dossier Réplication , puis développez le dossier Abonnements locaux .

  3. Cliquez avec le bouton droit sur un abonnement, puis cliquez sur Propriétés.

  4. Modifiez les propriétés si nécessaire, puis cliquez sur OK.

Pour afficher des propriétés d'extraction d'abonnement à partir du serveur de publication dans le moniteur de réplication

  1. Développez un groupe Serveur de publication dans le volet gauche du moniteur de réplication, développez un serveur de publication puis cliquez sur une publication.

  2. Cliquez sur l'onglet Tous les abonnements .

  3. Cliquez avec le bouton droit sur un abonnement, puis cliquez sur Propriétés.

  4. Affichez les propriétés, puis cliquez sur OK.

Utilisation de Transact-SQL

Il est possible de modifier des abonnements par extraction et d'accéder par programme à leurs propriétés en utilisant des procédures stockées de réplication. Les procédures stockées utilisées dépendent du type de publication auquel l'abonnement appartient.

Pour afficher les propriétés d'un abonnement par extraction à une publication transactionnelle ou d'instantané

  1. Sur l'Abonné, exécutez sp_helppullsubscription. Spécifiez @publisher, @publisher_dbet @publication. Des informations relatives à l'abonnement qui est stocké dans les tables système de l'Abonné sont alors renvoyées.

  2. Sur l'Abonné, exécutez sp_helpsubscription_properties. Spécifiez @publisher, de @publisher_db, de @publicationet affectez l'une des valeurs suivantes à @publication_type:

    • 0 - l'abonnement appartient à une publication transactionnelle.

    • 1 - l'abonnement appartient à une publication d'instantané.

  3. Sur le serveur de publication, exécutez sp_helpsubscription. Spécifiez @publication et @subscriber.

  4. Sur le serveur de publication, exécutez sp_helpsubscriberinfo, en spécifiant @subscriber. Des informations relatives à l'Abonné sont alors affichées.

Pour modifier les propriétés d'un abonnement par extraction à une publication transactionnelle ou d'instantané

  1. Sur l’Abonné, exécutez sp_change_subscription_properties, en spécifiant @publisher, @publisher_db, @publication, la valeur 0 (transactionnel) ou 1 (instantané) pour @publication_type, la nouvelle propriété d’abonnement @property et la nouvelle valeur @value.

  2. (Facultatif) Dans la base de données d'abonnement de l'Abonné, exécutez sp_changesubscriptiondtsinfo. Spécifiez l’ID du travail de l’Agent de distribution pour @jobidet les propriétés de package DTS (Data Transformation Services) suivantes :

    • @dts_package_name

    • dts_package_password

    • @dts_package_location

    Cela modifie les propriétés de package DTS d'un abonnement.

    Remarque

    L'ID de travail peut être obtenu en exécutant sp_helpsubscription.

Pour afficher les propriétés d'un abonnement par extraction à une publication de fusion

  1. Sur l'Abonné, exécutez sp_helpmergepullsubscription. Spécifiez @publisher, @publisher_dbet @publication.

  2. Sur l'Abonné, exécutez sp_helpsubscription_properties. Spécifiez @publisher, @publisher_db, @publication, et la valeur 2 pour @publication_type.

  3. Sur le serveur de publication, exécutez sp_helpmergesubscription pour afficher les informations d'abonnement. Pour retourner des informations sur un abonnement spécifique, spécifiez @publication, @subscriber, et la valeur pull pour @subscription_type.

  4. Sur le serveur de publication, exécutez sp_helpsubscriberinfo, en spécifiant @subscriber. Des informations relatives à l'Abonné sont alors affichées.

Pour modifier les propriétés d'un abonnement par extraction à une publication de fusion

  1. Sur l'Abonné, exécutez sp_changemergepullsubscription. Spécifiez @publication, @publisher, @publisher_db, la nouvelle propriété d’abonnement @property et la nouvelle valeur @value.

Utilisation d'objets RMO (Replication Management Objects)

Les classes RMO à utiliser pour afficher ou modifier les propriétés d'abonnements par extraction dépendent du type de publication auquel l'abonnement par extraction est souscrit.

Pour afficher ou modifier les propriétés d'un abonnement par extraction à une publication transactionnelle ou d'instantané

  1. Créez une connexion à l'Abonné en utilisant la classe ServerConnection .

  2. Créez une instance de la classe TransPullSubscription.

  3. Définissez les propriétés PublicationName, DatabaseName, PublisherNameet PublicationDBName .

  4. Définissez la connexion créée à l'étape 1 pour la propriété ConnectionContext .

  5. Appelez la méthode LoadProperties pour obtenir les propriétés de l'objet. Si cette méthode retourne false, soit les propriétés de l'abonnement ont été définies de manière incorrecte à l'étape 3, soit l'abonnement n'existe pas sur le serveur.

  6. (Facultatif) Pour modifier des propriétés, modifiez la valeur d'une des propriétés TransPullSubscription qui peuvent être définies, puis appelez la méthode CommitPropertyChanges .

  7. (Facultatif) Pour consulter les nouveaux paramètres, appelez la méthode Refresh pour recharger les propriétés pour l'article.

  8. Fermez toutes les connexions.

Pour afficher ou modifier les propriétés d'un abonnement par extraction à une publication de fusion

  1. Créez une connexion à l'Abonné en utilisant la classe ServerConnection .

  2. Créez une instance de la classe MergePullSubscription.

  3. Définissez les propriétés PublicationName, DatabaseName, PublisherNameet PublicationDBName .

  4. Définissez la connexion créée à l'étape 1 pour la propriété ConnectionContext .

  5. Appelez la méthode LoadProperties pour obtenir les propriétés de l'objet. Si cette méthode retourne false, soit les propriétés de l'abonnement ont été définies de manière incorrecte à l'étape 3, soit l'abonnement n'existe pas sur le serveur.

  6. (Facultatif) Pour modifier des propriétés, modifiez la valeur d'une des propriétés MergePullSubscription qui peuvent être définies, puis appelez la méthode CommitPropertyChanges .

  7. (Facultatif) Pour consulter les nouveaux paramètres, appelez la méthode Refresh pour recharger les propriétés pour l'article.

  8. Fermez toutes les connexions.