Freigeben über


Vorgehensweise: Manuelles Initialisieren eines Abonnements (Replikationsprogrammierung mit Transact-SQL)

Obwohl der Anfangssnapshot normalerweise zum Initialisieren eines Abonnements verwendet wird, können Abonnements für Veröffentlichungen ohne einen Snapshot initialisiert werden. Voraussetzung dafür ist allerdings, dass der Abonnent das Schema und die Ausgangsdaten bereits besitzt.

Wichtiger HinweisWichtig

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.

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 Snapshot.

  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 Vorgehensweise: Erstellen eines Pullabonnements (Replikationsprogrammierung mit Transact-SQL).

  3. Führen Sie auf dem Abonnenten sp_addpullsubscription aus. Informationen zum Aktualisieren von Abonnements finden Sie unter Vorgehensweise: Erstellen eines aktualisierbaren Abonnements für eine Transaktionsveröffentlichung (Replikationsprogrammierung mit Transact-SQL).

  4. Führen Sie auf dem Abonnenten sp_addpullsubscription_agent aus. Weitere Informationen finden Sie unter Vorgehensweise: Erstellen eines Pullabonnements (Replikationsprogrammierung mit Transact-SQL).

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

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 Snapshot.

  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 Vorgehensweise: Erstellen eines aktualisierbaren Abonnements für eine Transaktionsveröffentlichung (Replikationsprogrammierung mit Transact-SQL).

  3. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addpushsubscription_agent aus. Weitere Informationen finden Sie unter Vorgehensweise: Erstellen eines Pushabonnements (Replikationsprogrammierung mit Transact-SQL).

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

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. Weitere Informationen finden Sie unter Initialisieren eines Mergeabonnements ohne Momentaufnahme.

  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 Vorgehensweise: Erstellen eines Pullabonnements (Replikationsprogrammierung mit Transact-SQL).

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

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. Weitere Informationen finden Sie unter Initialisieren eines Mergeabonnements ohne Momentaufnahme.

  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 Vorgehensweise: Erstellen eines Pushabonnements (Replikationsprogrammierung mit Transact-SQL).

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