Manuelles Initialisieren eines Abonnements

In diesem Thema wird beschrieben, wie ein Abonnement manuell in SQL Server 2012 mit SQL Server Management Studio oder Transact-SQL initialisiert wird. Obwohl die Anfangsmomentaufnahme normalerweise zum Initialisieren eines Abonnements verwendet wird, können Abonnements für Veröffentlichungen ohne eine Momentaufnahme initialisiert werden. Voraussetzung dafür ist allerdings, dass der Abonnent das Schema und die Ausgangsdaten bereits besitzt.

In diesem Thema

  • Vorbereitungen:

    Einschränkungen

  • So initialisieren Sie ein Abonnement manuell mit:

    SQL Server Management Studio

    Transact-SQL

Vorbereitungen

Einschränkungen

  • Wenn es zwischen dem Zeitpunkt, zu dem die Daten und das Schema auf den Abonnenten kopiert wurden, und dem Zeitpunkt, zu dem das Abonnement manuell initialisiert wurde, auf einer Datenbank, die mit einer Transaktionsreplikation veröffentlicht wurde, zu einer Aktivität gekommen ist, kann es passieren, dass Änderungen, die sich aus dieser Aktivität ergeben, nicht auf den Abonnenten repliziert werden.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von SQL Server Management Studio

Um ein Abonnement für eine Veröffentlichung manuell zu initialisieren, kopieren Sie das Schema (und in der Regel auch einige Daten) in die Abonnementdatenbank. Das Schema und die Daten sollten mit der Veröffentlichungsdatenbank übereinstimmen. Geben Sie anschließend im Assistenten für neue Abonnements auf der Seite Abonnements initialisieren an, dass für das Abonnement kein Schema und keine Daten erforderlich sind. Weitere Informationen zum Zugreifen auf diesen Assistenten finden Sie unter Initialisieren eines Transaktionsabonnements ohne Momentaufnahme und Erstellen eines Pullabonnements.

Beim ersten Synchronisieren des Abonnements werden die für die Replikation erforderlichen Objekte und Metadaten in die Abonnementdatenbank kopiert.

So initialisieren Sie ein Abonnement für eine Veröffentlichung manuell

  1. Stellen Sie sicher, dass das Schema und die Daten in die Abonnementdatenbank kopiert wurden.

  2. Deaktivieren Sie im Assistenten für neue Abonnements auf der Seite Abonnements initialisieren das Kontrollkästchen Initialisieren. Wiederholen Sie diesen Schritt für alle Abonnements, bei denen nur die Replikationsobjekte und -metadaten kopiert werden sollen.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von Transact-SQL

Abonnements können manuell mit gespeicherten Replikationsprozeduren initialisiert werden.

So wird ein Pullabonnement für eine Transaktionsveröffentlichung manuell initialisiert

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind. Weitere Informationen finden Sie unter Initialisieren eines Transaktionsabonnements ohne Momentaufnahme.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addsubscription aus. Geben Sie @publication, @subscriber, den Namen der Datenbank auf dem Abonnenten mit den veröffentlichten Daten für @destination_db, den Wert pull für @subscription_type und den Wert replication support only für @sync_type an. Weitere Informationen finden Sie unter Erstellen eines Pullabonnements.

  3. Führen Sie auf dem Abonnenten sp_addpullsubscription aus. Informationen zum Aktualisieren von Abonnements finden Sie unter Erstellen von aktualisierbaren Abonnements für eine Transaktionsveröffentlichung.

  4. Führen Sie auf dem Abonnenten sp_addpullsubscription_agent aus. Weitere Informationen finden Sie unter Erstellen eines Pullabonnements.

  5. Starten Sie den Verteilungs-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen. Weitere Informationen finden Sie unter Synchronisieren eines Pullabonnements.

So wird ein Pushabonnement für eine Transaktionsveröffentlichung manuell initialisiert

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind. Weitere Informationen finden Sie unter Initialisieren eines Transaktionsabonnements ohne Momentaufnahme.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addsubscription aus. Geben Sie den Namen der Datenbank auf dem Abonnenten mit den veröffentlichten Daten für @destination_db, den Wert push für @subscription_type und den Wert replication support only für @sync_type an. Informationen zum Aktualisieren von Abonnements finden Sie unter Erstellen von aktualisierbaren Abonnements für eine Transaktionsveröffentlichung.

  3. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addpushsubscription_agent aus. Weitere Informationen finden Sie unter Erstellen eines Pushabonnements.

  4. Starten Sie den Verteilungs-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen. Weitere Informationen finden Sie unter Synchronisieren eines Pushabonnements.

So wird ein Pullabonnement für eine Mergeveröffentlichung manuell initialisiert

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind. Sie können dazu eine Sicherung der Veröffentlichungsdatenbank auf dem Abonnenten wiederherstellen.

  2. Führen Sie auf dem Verleger sp_addmergesubscription aus. Geben Sie @publication, @subscriber, @subscriber_db und den Wert pull für @subscription_type an. Damit wird das Pullabonnement registriert.

  3. Führen Sie auf dem Abonnenten für die Datenbank, die die veröffentlichten Daten enthält, sp_addmergepullsubscription aus. Geben Sie für @sync_type den Wert none an.

  4. Führen Sie auf dem Abonnenten sp_addmergepullsubscription_agent aus. Weitere Informationen finden Sie unter Erstellen eines Pullabonnements.

  5. Starten Sie den Merge-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen. Weitere Informationen finden Sie unter Synchronisieren eines Pullabonnements.

So wird ein Pushabonnement für eine Mergeveröffentlichung manuell initialisiert

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind. Sie können dazu eine Sicherung der Veröffentlichungsdatenbank auf dem Abonnenten wiederherstellen.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addmergesubscription aus. Geben Sie den Namen der Datenbank auf dem Abonnenten mit den veröffentlichten Daten für @subscriber_db, den Wert push für @subscription_type und den Wert none für @sync_type an.

  3. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addmergepushsubscription_agent aus. Weitere Informationen finden Sie unter Erstellen eines Pushabonnements.

  4. Starten Sie den Merge-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen. Weitere Informationen finden Sie unter Synchronisieren eines Pushabonnements.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Siehe auch

Konzepte

Initialisieren eines Transaktionsabonnements ohne Momentaufnahme

Sichern und Wiederherstellen von replizierten Datenbanken

Bewährte Methoden für die Replikationssicherheit