Erstellen von aktualisierbaren Abonnements für eine Transaktionsveröffentlichung

Gilt für:SQL Server

Hinweis

Dieses Feature wird in den Versionen von SQL Server von 2012 bis 2016 weiterhin unterstützt. Diese Funktion wird in einer zukünftigen Version von SQL Serverentfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

Bei einer Transaktionsreplikation können am Abonnenten vorgenommene Änderungen mithilfe sofort aktualisierbarer Abonnements oder Abonnements mit verzögerter Aktualisierung über eine Warteschlange an den Verleger zurückgegeben werden. Aktualisierbare Abonnements können mithilfe von gespeicherten Replikationsprozeduren programmgesteuert erstellt werden.

Zum Konfigurieren aktualisierbarer Abonnements steht Ihnen die Seite Aktualisierbare Abonnements des Assistenten für neue Abonnements zur Verfügung. Diese Seite ist nur verfügbar, wenn Sie eine Transaktionsveröffentlichung für aktualisierbare Abonnements aktiviert haben. Weitere Informationen zum Aktivieren aktualisierbarer Abonnements finden Sie unter Aktivieren des Aktualisierens von Abonnements für Transaktionsveröffentlichungen.

Konfigurieren eines aktualisierbaren Abonnements vom Verleger aus

  1. Stellen Sie mit dem Verleger in Microsoft SQL Server Management Studio eine Verbindung her, und erweitern Sie dann den Serverknoten.

  2. Erweitern Sie den Ordner Replikation , und erweitern Sie dann den Ordner Lokale Veröffentlichungen .

  3. Klicken Sie mit der rechten Maustaste auf eine Transaktionsveröffentlichung, die für aktualisierbare Abonnements aktiviert ist, und klicken Sie dann auf Neue Abonnements.

  4. Geben Sie auf den folgenden Seiten des Assistenten die Optionen für das Abonnement an. Geben Sie dabei z. B. an, wo der Verteilungs-Agent ausgeführt werden soll.

  5. Kontrollieren Sie auf der Seite Aktualisierbare Abonnements des Assistenten für neue Veröffentlichung, dass die Option Replizieren aktiviert ist.

  6. Wählen Sie in der Dropdownliste Commit auf Verleger ausführen eine Option aus:

    • Wenn Sie Abonnements mit sofortigem Update verwenden möchten, aktivieren Sie die Option Commit für Änderungen gleichzeitig ausführen. Wenn Sie diese Option aktivieren und die Veröffentlichung Abonnements mit verzögertem Update über eine Warteschlange zulässt (Standardkonfiguration bei Veröffentlichungen, die im Assistenten für neue Veröffentlichung erstellt wurden), wird für die update_mode-Abonnementeigenschaft failover festgelegt. Dieser Modus ermöglicht es Ihnen, bei Bedarf später zum Update über eine Warteschlange zu wechseln.

    • Wenn Sie Abonnements mit verzögertem Update über eine Warteschlange verwenden möchten, aktivieren Sie die Option Änderungen in die Warteschlange einreihen und Commit baldmöglichst ausführen. Wenn Sie diese Option aktivieren, die Veröffentlichung Abonnements mit sofortigem Update zulässt (Standardkonfiguration bei Veröffentlichungen, die im Assistenten für neue Veröffentlichung erstellt wurden) und auf dem Abonnenten SQL Server 2005 oder eine höhere Version ausgeführt wird, wird für die update_mode-Abonnementeigenschaft die Einstellung „queued failover“ festgelegt. Dieser Modus ermöglicht es Ihnen, bei Bedarf später zum sofortigen Update zu wechseln.

    Weitere Informationen zum Umschalten zwischen den Updatemodi finden Sie unter Umschalten zwischen Updatemodi für ein aktualisierbares Transaktionsabonnement.

  7. Bei Abonnements, die das sofortige Update verwenden oder bei denen für update_mode die Einstellung queued failover festgelegt ist, wird die Seite Anmeldename für aktualisierbare Abonnements angezeigt. Geben Sie auf der Seite Anmeldename für aktualisierbare Abonnements einen Verbindungsserver an, über den die Verbindungen mit dem Verleger für Abonnements mit sofortigem Update hergestellt werden sollen. Die Verbindungen werden durch die Trigger verwendet, die auf dem Abonnenten ausgelöst werden und die Änderungen zum Verleger weitergeben. Wählen Sie eine der folgenden Optionen aus:

    • Verbindungsserver erstellen, der mithilfe der SQL Server-Authentifizierung eine Verbindung herstellt. Wählen Sie diese Option aus, wenn Sie keinen Remoteserver oder Verbindungsserver für die Verbindungen zwischen dem Abonnenten und dem Verleger definiert haben. Die Replikation erstellt dann einen Verbindungsserver für Sie. Das Konto, das Sie angeben, muss bereits auf dem Verleger vorhanden sein.

    • Vordefinierten Verbindungsserver oder Remoteserver verwenden Wählen Sie diese Option aus, wenn Sie einen Remoteserver oder Verbindungsserver zwischen dem Abonnenten und dem Verleger mithilfe von sp_addserver (Transact-SQL), sp_addlinkedserver (Transact-SQL), SQL Server Management Studio oder einer anderen Methode definiert haben.

    Informationen zu den Berechtigungen, die das Verbindungsserverkonto benötigt, finden Sie unter Abonnements mit verzögertem Update über eine Warteschlange unter Hier Linkbeschreibung eingeben.

  8. Schließen Sie den Assistenten ab.

Konfigurieren eines aktualisierbaren Abonnements vom Abonnenten aus

  1. Stellen Sie mit dem Abonnenten in SQL Server Management Studio eine Verbindung her, und erweitern Sie dann den Serverknoten.

  2. Erweitern Sie den Ordner Replikation .

  3. Klicken Sie mit der rechten Maustaste auf den Ordner Lokale Abonnements , und klicken Sie dann auf Neue Abonnements.

  4. Aktivieren Sie auf der Seite Veröffentlichung des Assistenten für neue Abonnements in der Dropdownliste Verleger die Option SQL Server-Verleger suchen.

  5. Stellen Sie im Dialogfeld Verbindung mit Server herstellen eine Verbindung mit dem Verleger her.

  6. Wählen Sie auf der Seite Veröffentlichung eine für aktualisierbare Abonnements aktivierte Transaktionsveröffentlichung aus.

  7. Geben Sie auf den folgenden Seiten des Assistenten die Optionen für das Abonnement an. Geben Sie dabei z. B. an, wo der Verteilungs-Agent ausgeführt werden soll.

  8. Kontrollieren Sie auf der Seite Aktualisierbare Abonnements des Assistenten für neue Veröffentlichung, dass die Option Replizieren aktiviert ist.

  9. Wählen Sie in der Dropdownliste Commit auf Verleger ausführen eine Option aus:

    • Wenn Sie Abonnements mit sofortigem Update verwenden möchten, aktivieren Sie die Option Commit für Änderungen gleichzeitig ausführen. Wenn Sie diese Option aktivieren und die Veröffentlichung Abonnements mit verzögertem Update über eine Warteschlange zulässt (Standardkonfiguration bei Veröffentlichungen, die im Assistenten für neue Veröffentlichung erstellt wurden), wird für die update_mode-Abonnementeigenschaft failover festgelegt. Dieser Modus ermöglicht es Ihnen, bei Bedarf später zum Update über eine Warteschlange zu wechseln.

    • Wenn Sie Abonnements mit verzögertem Update über eine Warteschlange verwenden möchten, aktivieren Sie die Option Änderungen in die Warteschlange einreihen und Commit baldmöglichst ausführen. Wenn Sie diese Option aktivieren, die Veröffentlichung Abonnements mit sofortigem Update zulässt (Standardkonfiguration bei Veröffentlichungen, die im Assistenten für neue Veröffentlichung erstellt wurden) und auf dem Abonnenten SQL Server 2005 oder eine höhere Version ausgeführt wird, wird für die update_mode-Abonnementeigenschaft die Einstellung queued failover festgelegt. Dieser Modus ermöglicht es Ihnen, bei Bedarf später zum sofortigen Update zu wechseln.

    Weitere Informationen zum Umschalten zwischen den Updatemodi finden Sie unter Umschalten zwischen Updatemodi für ein aktualisierbares Transaktionsabonnement.

  10. Bei Abonnements, die das sofortige Update verwenden oder bei denen für update_mode die Einstellung queued failover festgelegt ist, wird die Seite Anmeldename für aktualisierbare Abonnements angezeigt. Geben Sie auf der Seite Anmeldename für aktualisierbare Abonnements einen Verbindungsserver an, über den die Verbindungen mit dem Verleger für Abonnements mit sofortigem Update hergestellt werden sollen. Die Verbindungen werden durch die Trigger verwendet, die auf dem Abonnenten ausgelöst werden und die Änderungen zum Verleger weitergeben. Wählen Sie eine der folgenden Optionen aus:

    • Verbindungsserver erstellen, der mithilfe der SQL Server-Authentifizierung eine Verbindung herstellt. Wählen Sie diese Option aus, wenn Sie keinen Remoteserver oder Verbindungsserver für die Verbindungen zwischen dem Abonnenten und dem Verleger definiert haben. Die Replikation erstellt dann einen Verbindungsserver für Sie. Das Konto, das Sie angeben, muss bereits auf dem Verleger vorhanden sein.

    • Vordefinierten Verbindungsserver oder Remoteserver verwenden Wählen Sie diese Option aus, wenn Sie einen Remoteserver oder Verbindungsserver zwischen dem Abonnenten und dem Verleger mithilfe von sp_addserver (Transact-SQL), sp_addlinkedserver (Transact-SQL), SQL Server Management Studio oder einer anderen Methode definiert haben.

    Informationen zu den Berechtigungen, die das Verbindungsserverkonto benötigt, finden Sie unter Abonnements mit verzögertem Update über eine Warteschlange unter Hier Linkbeschreibung eingeben.

  11. Schließen Sie den Assistenten ab.

Erstellen eines sofort aktualisierbaren Pullabonnements

  1. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Abonnements mit sofortigem Update unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_sync_tran im Resultset den Wert 1hat, unterstützt die Veröffentlichung Abonnements mit sofortigem Update.
    • Wenn allow_sync_tran im Resultset den Wert 0hat, muss die Veröffentlichung erneut erstellt und die Unterstützung von Abonnements mit sofortigem Update aktiviert werden.
  2. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Pullabonnements unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_pull im Resultset den Wert 1hat, unterstützt die Veröffentlichung Pullabonnements.
    • Wenn allow_pull den Wert 0hat, führen Sie sp_changepublicationaus, wobei Sie allow_pull für @property und true für @valueangeben.
  3. Führen Sie auf dem Abonnenten sp_addpullsubscriptionaus. Geben Sie @publisher und @publicationund einen der folgenden Werte für @update_modefest:

    • sync tran – Ermöglicht sofortige Updates des Abonnements.
    • failover – Ermöglicht das sofortige Aktualisieren für das Abonnement, wobei als Failoveroption das verzögerte Aktualisieren über eine Warteschlange verwendet wird.

    Hinweis

    failover erfordert, dass die Veröffentlichung auch Abonnements mit verzögertem Aktualisieren über eine Warteschlange zulässt.

  4. Führen Sie auf dem Abonnenten sp_addpullsubscription_agentaus. Geben Sie die folgenden Informationen an:

    • Die Parameter @publisher, @publisher_dbund @publication .
    • Die Microsoft Windows-Anmeldeinformationen, unter denen der Verteilungs-Agent auf dem Abonnenten für @job_login und @job_passwordausgeführt wird.

    Hinweis

    Für Verbindungen, die mit der integrierten Windows-Authentifizierung hergestellt werden, werden immer die mit @job_login und @job_passwordangegebenen Windows-Anmeldeinformationen verwendet. Der Verteilungs-Agent stellt die lokale Verbindung mit dem Abonnenten immer mithilfe der integrierten Windows-Authentifizierung her. Standardmäßig stellt der Agent mithilfe der integrierten Windows-Authentifizierung eine Verbindung mit dem Verteiler her.

    • (Optional) Ein Wert von 0 für @distributor_security_mode und die Microsoft SQL Server-Anmeldeinformationen für @distributor_login und @distributor_password, wenn Sie beim Herstellen einer Verbindung zum Verteiler die SQL Server-Authentifizierung verwenden müssen.
    • Einen Zeitplan für den Verteilungs-Agentauftrag für dieses Abonnement.
  5. Führen Sie auf dem Abonnenten für die Abonnementdatenbank sp_link_publicationaus. Geben Sie @publisher, @publication, den Namen der Veröffentlichungsdatenbank für @publisher_dbund einen der folgenden Werte für @security_modean:

    • 0 – Verwenden Sie die SQL Server-Authentifizierung, wenn Updates beim Verleger vorgenommen werden. Diese Option erfordert auf dem Verleger die Angabe gültiger Anmeldeinformationen für @login und @password.
    • 1 – Verwenden Sie zum Verbindungsaufbau mit dem Verleger den Sicherheitskontext des Benutzers, der Änderungen am Abonnenten vornimmt. Weitere Informationen zu den in Verbindung mit diesem Sicherheitsmodus geltenden Beschränkungen finden Sie unter sp_link_publication .
    • 2 – Verwenden Sie einen vorhandenen benutzerdefinierten Anmeldenamen für den Verbindungsserver, der mit sp_addlinkedservererstellt wurde.
  6. Führen Sie auf dem Verleger sp_addsubscription aus, wobei Sie @publication, @subscriber, @destination_db, den Wert „Pull“ für @subscription_typeund denselben Wert angeben, den Sie in Schritt 3 für @update_modeangegeben haben. Damit wird das Pullabonnement beim Verleger registriert.

Erstellen eines sofort aktualisierbaren Pushabonnements

  1. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Abonnements mit sofortigem Update unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_sync_tran im Resultset den Wert 1hat, unterstützt die Veröffentlichung Abonnements mit sofortigem Update.
    • Wenn allow_sync_tran im Resultset den Wert 0hat, muss die Veröffentlichung erneut erstellt und die Unterstützung von Abonnements mit sofortigem Update aktiviert werden.
  2. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Pushabonnements unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_push im Resultset den Wert 1hat, unterstützt die Veröffentlichung Pushabonnements.
    • Wenn allow_push den Wert 0hat, führen Sie sp_changepublicationaus, wobei Sie allow_push für @property und true für @valueangeben.
  3. Führen Sie auf dem Verleger sp_addsubscriptionaus. Geben Sie @publication, @subscriber, @destination_dbund einen der folgenden Werte für @update_modean:

    • sync tran – Aktiviert die Unterstützung für sofortige Updates.
    • failover – Aktiviert die Unterstützung für sofortige Updates, wobei verzögerte Updates über eine Warteschlange als Failoveroption verwendet werden.

    Hinweis

    failover erfordert, dass die Veröffentlichung auch Abonnements mit verzögertem Aktualisieren über eine Warteschlange zulässt.

  4. Führen Sie auf dem Verleger sp_addpushsubscription_agentaus. Geben Sie die folgenden Parameter an:

    • @subscriber, @subscriber_dbund @publication.

    • Die Windows-Anmeldeinformationen, unter denen der Verteilungs-Agent beim Verteiler für @job_login und @job_passwordausgeführt wird.

    Hinweis

    Für Verbindungen, die mit der integrierten Windows-Authentifizierung hergestellt werden, werden immer die mit @job_login und @job_passwordangegebenen Windows-Anmeldeinformationen verwendet. Der Verteilungs-Agent stellt die lokale Verbindung mit dem Verteiler immer mithilfe der Windows-Authentifizierung her. Standardmäßig stellt der Agent mithilfe der integrierten Windows-Authentifizierung eine Verbindung mit dem Abonnenten her.

    • (Optional) Ein Wert von 0 für @subscriber_security_mode und die SQL Server-Anmeldeinformationen für @subscriber_login und @subscriber_password, wenn Sie beim Herstellen einer Verbindung zum Abonnenten die SQL Server-Authentifizierung verwenden müssen.
    • Einen Zeitplan für den Verteilungs-Agentauftrag für dieses Abonnement.
  5. Führen Sie auf dem Abonnenten für die Abonnementdatenbank sp_link_publicationaus. Geben Sie @publisher, @publication, den Namen der Veröffentlichungsdatenbank für @publisher_dbund einen der folgenden Werte für @security_modean:

    • 0 – Verwenden Sie die SQL Server-Authentifizierung, wenn Updates beim Verleger vorgenommen werden. Diese Option erfordert auf dem Verleger die Angabe gültiger Anmeldeinformationen für @login und @password.
    • 1 – Verwenden Sie zum Verbindungsaufbau mit dem Verleger den Sicherheitskontext des Benutzers, der Änderungen am Abonnenten vornimmt. Weitere Informationen zu den in Verbindung mit diesem Sicherheitsmodus geltenden Beschränkungen finden Sie unter sp_link_publication .
    • 2 – Verwenden Sie einen vorhandenen benutzerdefinierten Anmeldenamen für den Verbindungsserver, der mit sp_addlinkedservererstellt wurde.

Erstellen eines Pullabonnements mit verzögertem Update über eine Warteschlange

  1. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Abonnements mit verzögertem Update über eine Warteschlange unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_queued_tran im Resultset den Wert 1hat, unterstützt die Veröffentlichung Abonnements mit sofortigem Update.
    • Wenn allow_queued_tran im Resultset den Wert 0hat, muss die Veröffentlichung erneut erstellt und die Unterstützung von Abonnements mit verzögertem Update über eine Warteschlange aktiviert werden.
  2. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Pullabonnements unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_pull im Resultset den Wert 1hat, unterstützt die Veröffentlichung Pullabonnements.
    • Wenn allow_pull den Wert 0hat, führen Sie sp_changepublicationaus, wobei Sie allow_pull für @property und true für @valueangeben.
  3. Führen Sie auf dem Abonnenten sp_addpullsubscriptionaus. Geben Sie @publisher und @publicationund einen der folgenden Werte für @update_modefest:

    • queued tran – Aktiviert das verzögerte Update über eine Warteschlange für das Abonnement.
    • queued failover – Aktiviert die Unterstützung für verzögerte Updates über eine Warteschlange, wobei sofortige Updates als Failoveroption verwendet werden.

    Hinweis

    queued failover erfordert, dass die Veröffentlichung auch Abonnements mit sofortigem Update zulässt. Damit im Fehlerfall sofortige Updates durchgeführt werden können, müssen Sie unter Verwendung von sp_link_publication die Anmeldeinformationen definieren, unter denen Änderungen am Abonnenten auf dem Verleger repliziert werden sollen.

  4. Führen Sie auf dem Abonnenten sp_addpullsubscription_agentaus. Geben Sie die folgenden Parameter an:

    • @publisher, @publisher_dbund @publication.
    • Die Windows-Anmeldeinformationen, unter denen der Verteilungs-Agent auf dem Abonnenten für @job_login und @job_passwordausgeführt wird.

    Hinweis

    Für Verbindungen, die mit der integrierten Windows-Authentifizierung hergestellt werden, werden immer die mit @job_login und @job_passwordangegebenen Windows-Anmeldeinformationen verwendet. Der Verteilungs-Agent stellt die lokale Verbindung mit dem Abonnenten immer mithilfe der integrierten Windows-Authentifizierung her. Standardmäßig stellt der Agent mithilfe der integrierten Windows-Authentifizierung eine Verbindung mit dem Verteiler her.

    • (Optional) Ein Wert von 0 für @distributor_security_mode und die SQL Server-Anmeldeinformationen für @distributor_login und @distributor_password, wenn Sie beim Herstellen einer Verbindung zum Verteiler die SQL Server-Authentifizierung verwenden müssen.
    • Einen Zeitplan für den Verteilungs-Agentauftrag für dieses Abonnement.
  5. Führen Sie auf dem Verleger sp_addsubscription aus, umd den Abonnenten auf dem Verleger zu registrieren, wobei Sie @publication, @subscriber, @destination_db, den Wert „Pull“ für @subscription_typeund denselben Wert angeben, den Sie in Schritt 3 für @update_modeangegeben haben. Damit wird das Pullabonnement beim Verleger registriert.

Erstellen eines Pushabonnements mit verzögertem Update über eine Warteschlange

  1. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Abonnements mit verzögertem Update über eine Warteschlange unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn „allow_queued_tran“ im Resultset den Wert 1 hat, unterstützt die Veröffentlichung Abonnements mit sofortigem Update.
    • Wenn „allow_queued_tran“ im Resultset den Wert 0 hat, muss die Veröffentlichung erneut erstellt und die Unterstützung von Abonnements mit verzögertem Update über eine Warteschlange aktiviert werden. Weitere Informationen finden Sie unter „Gewusst wie: Aktivieren von aktualisierbaren Abonnements für Transaktionsveröffentlichungen (Replikationsprogrammierung mit Transact-SQL)“.
  2. Überprüfen Sie auf dem Verleger, ob die Veröffentlichung Pushabonnements unterstützt, indem Sie sp_helppublicationausführen.

    • Wenn allow_push im Resultset den Wert 1hat, unterstützt die Veröffentlichung Pushabonnements.
    • Wenn allow_push den Wert 0hat, führen Sie sp_changepublicationaus, wobei Sie „allow_push“ für @property und true für @valueangeben.
  3. Führen Sie auf dem Verleger sp_addsubscriptionaus. Geben Sie @publication, @subscriber, @destination_dbund einen der folgenden Werte für @update_modean:

    • queued tran – Aktiviert das verzögerte Update über eine Warteschlange für das Abonnement.
    • queued failover – Aktiviert die Unterstützung für verzögerte Updates über eine Warteschlange, wobei sofortige Updates als Failoveroption verwendet werden.

    Hinweis

    Die Option „queued failover“ erfordert, dass die Veröffentlichung auch Abonnements mit sofortigem Update zulässt. Damit im Fehlerfall sofortige Updates durchgeführt werden können, müssen Sie unter Verwendung von sp_link_publication die Anmeldeinformationen definieren, unter denen Änderungen am Abonnenten auf dem Verleger repliziert werden sollen.

  4. Führen Sie auf dem Verleger sp_addpushsubscription_agentaus. Geben Sie die folgenden Parameter an:

    • @subscriber, @subscriber_dbund @publication.
    • Die Windows-Anmeldeinformationen, unter denen der Verteilungs-Agent beim Verteiler für @job_login und @job_passwordausgeführt wird.

    Hinweis

    Für Verbindungen, die mit der integrierten Windows-Authentifizierung hergestellt werden, werden immer die mit @job_login und @job_passwordangegebenen Windows-Anmeldeinformationen verwendet. Der Verteilungs-Agent stellt die lokale Verbindung mit dem Verteiler immer mithilfe der Windows-Authentifizierung her. Standardmäßig stellt der Agent mithilfe der integrierten Windows-Authentifizierung eine Verbindung mit dem Abonnenten her.

    • (Optional) Ein Wert von 0 für @subscriber_security_mode und die SQL Server-Anmeldeinformationen für @subscriber_login und @subscriber_password, wenn Sie beim Herstellen einer Verbindung zum Abonnenten die SQL Server-Authentifizierung verwenden müssen.
    • Einen Zeitplan für den Verteilungs-Agentauftrag für dieses Abonnement.

Festlegen der Konfliktlösungsoptionen für das verzögerte Update über eine Warteschlange

Die Konfliktlösungsoptionen für Veröffentlichungen, die Abonnements mit verzögertem Update über eine Warteschlange unterstützen, werden auf der Seite Abonnementoptionen des Dialogfelds Veröffentlichungseigenschaften - <Veröffentlichung> festgelegt. Weitere Informationen zum Zugreifen auf dieses Dialogfeld finden Sie unter View and Modify Publication Properties.

  1. Wählen Sie auf der Seite Abonnementoptionen des Dialogfelds Veröffentlichungseigenschaften - <Veröffentlichung> für die Option Richtlinie zur Konfliktlösung einen der folgenden Werte aus:

    • Verlegeränderung beibehalten
    • Abonnentenänderung beibehalten
    • Abonnement erneut initialisieren

Beispiel

In diesem Beispiel wird ein sofort aktualisierbares Abonnement für eine Veröffentlichung erstellt, die Abonnements mit sofortigem Update unterstützt. Die Werte für den Anmeldenamen und das Kennwort werden zur Laufzeit mithilfe von sqlcmd-Skriptvariablen bereitgestellt.

Hinweis

Dieses Skript verwendet „sqlcmd“-Skriptvariablen. Sie weisen das Format $(MyVariable)auf. Informationen zur Verwendung von Skriptvariablen in der Befehlszeile und in SQL Server Management Studio finden Sie im Abschnitt Ausführen von Replikationsskripts im Thema Konzepte für gespeicherte Systemprozeduren für die Replikation.

-- Execute this batch at the Subscriber.
DECLARE @publication AS sysname;
DECLARE @publicationDB AS sysname;
DECLARE @publisher AS sysname;
DECLARE @login AS sysname;
DECLARE @password AS NVARCHAR(512);
SET @publication = N'AdvWorksProductTran';
SET @publicationDB = N'AdventureWorks2022';
SET @publisher = $(PubServer);
SET @login = $(Login);
SET @password = $(Password);

-- At the subscription database, create a pull subscription to a transactional 
-- publication using immediate updating with queued updating as a failover.
EXEC sp_addpullsubscription
    @publisher = @publisher,
    @publication = @publication,
    @publisher_db = @publicationDB,
    @update_mode = N'failover',
    @subscription_type = N'pull';

-- Add an agent job to synchronize the pull subscription, 
-- which uses Windows Authentication when connecting to the Distributor.
EXEC sp_addpullsubscription_agent
    @publisher = @publisher,
    @publisher_db = @publicationDB,
    @publication = @publication,
    @job_login = @login,
    @job_password = @password;

-- Add a Windows Authentication-based linked server that enables the 
-- Subscriber-side triggers to make updates at the Publisher. 
EXEC sp_link_publication
    @publisher = @publisher,
    @publication = @publication,
    @publisher_db = @publicationDB,
    @security_mode = 0,
    @login = @login,
    @password = @password;
GO

USE AdventureWorks2022;
GO

-- Execute this batch at the Publisher.
DECLARE @publication AS sysname;
DECLARE @subscriptionDB AS sysname;
DECLARE @subscriber AS sysname;
SET @publication = N'AdvWorksProductTran';
SET @subscriptionDB = N'AdventureWorks2022Replica';
SET @subscriber = $(SubServer);

-- At the Publisher, register the subscription, using the defaults.
USE AdventureWorks2022;
EXEC sp_addsubscription
    @publication = @publication,
    @subscriber = @subscriber,
    @destination_db = @subscriptionDB,
    @subscription_type = N'pull',
    @update_mode = N'failover';
GO

Weitere Informationen

Updatable Subscriptions for Transactional Replication
Erstellen einer Veröffentlichung
Verwenden von sqlcmd mit Skriptvariablen