Manuelles Initialisieren eines AbonnementsInitialize a Subscription Manually

Gilt für: JaSQL Server JaAzure SQL-Datenbank (nur verwaltete Instanz) NeinAzure Synapse Analytics (SQL DW) NeinParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database (Managed Instance only) noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

In diesem Thema wird beschrieben, wie ein Abonnement manuell in SQL ServerSQL Server mit SQL Server Management StudioSQL Server Management Studio oder Transact-SQLTransact-SQLinitialisiert wird.This topic describes how to initialize a subscription manually in SQL ServerSQL Server by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. 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.While the initial snapshot is normally used to initialize a subscription, subscriptions to publications can be initialized without using a snapshot, provided that the schema and initial data are already present at the subscriber.

VorbereitungenBefore You Begin

EinschränkungenLimitations and Restrictions

  • 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.If there is activity on a database published using transactional replication between the time data and schema are copied to the Subscriber and the time at which the subscription is manually initialized, changes resulting from this activity might not be replicated to the Subscriber.

Verwenden von SQL Server Management StudioUsing 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.Initialize a subscription to a publication manually by copying the schema (and typically data) to the subscription database. Das Schema und die Daten sollten mit der Veröffentlichungsdatenbank übereinstimmen.The schema and data should match the publication database. 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.Then specify that the subscription does not require schema and data on the Initialize Subscriptions page of the New Subscription Wizard. Weitere Informationen zum Zugreifen auf diesen Assistenten finden Sie unter Initialize a Transactional Subscription Without a Snapshot und Create a Pull Subscriptioninitialisiert wird.For more information about accessing this wizard, see Initialize a Transactional Subscription Without a Snapshot and Create a Pull Subscription.

Beim ersten Synchronisieren des Abonnements werden die für die Replikation erforderlichen Objekte und Metadaten in die Abonnementdatenbank kopiert.When you synchronize the subscription for the first time, the objects and metadata required by replication are copied to the subscription database.

So initialisieren Sie ein Abonnement für eine Veröffentlichung manuellTo initialize a subscription to a publication manually

  1. Stellen Sie sicher, dass das Schema und die Daten in die Abonnementdatenbank kopiert wurden.Ensure that the schema and data are copied to the subscription database.

  2. Deaktivieren Sie im Assistenten für neue Abonnements auf der Seite Abonnements initialisieren das Kontrollkästchen Initialisieren .Clear the Initialize check box on the Initialize Subscriptions page of the New Subscription Wizard. Wiederholen Sie diesen Schritt für alle Abonnements, bei denen nur die Replikationsobjekte und -metadaten kopiert werden sollen.Do this for each subscription that requires only replication objects and metadata to be copied.

Verwenden von Transact-SQLUsing Transact-SQL

Abonnements können manuell mit gespeicherten Replikationsprozeduren initialisiert werden.Subscriptions can be initialized manually using replication stored procedures.

So wird ein Pullabonnement für eine Transaktionsveröffentlichung manuell initialisiertTo manually initialize a pull subscription to a transactional publication

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind.Ensure that the schema and data exist on the subscription database. Weitere Informationen finden Sie unter Initialize a Transactional Subscription Without a Snapshotinitialisiert wird.For more information, see Initialize a Transactional Subscription Without a Snapshot.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addsubscriptionaus.At the Publisher on the publication database, execute sp_addsubscription. 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.Specify @publication, @subscriber, the name of the database at the Subscriber containing the published data for @destination_db, a value of pull for @subscription_type, and a value of replication support only for @sync_type. Weitere Informationen finden Sie unter Create a Pull Subscription.For more information, see Create a Pull Subscription.

  3. Führen Sie auf dem Abonnenten sp_addpullsubscriptionaus.At the Subscriber, execute sp_addpullsubscription. Informationen zum Aktualisieren von Abonnements finden Sie unter Create an Updatable Subscription to a Transactional Publication.For updating subscriptions, see Create an Updatable Subscription to a Transactional Publication.

  4. Führen Sie auf dem Abonnenten sp_addpullsubscription_agentaus.At the Subscriber, execute sp_addpullsubscription_agent. Weitere Informationen finden Sie unter Create a Pull Subscription.For more information, see Create a Pull Subscription.

  5. Starten Sie den Verteilungs-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen.Start the Distribution Agent to transfer replication objects and download the latest changes from the Publisher. Weitere Informationen finden Sie unter Synchronize a Pull Subscription.For more information, see Synchronize a Pull Subscription.

So wird ein Pushabonnement für eine Transaktionsveröffentlichung manuell initialisiertTo manually initialize a push subscription to a transactional publication

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind.Ensure that the schema and data exist on the subscription database. Weitere Informationen finden Sie unter Initialize a Transactional Subscription Without a Snapshotinitialisiert wird.For more information, see Initialize a Transactional Subscription Without a Snapshot.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addsubscriptionaus.At the Publisher on the publication database, execute sp_addsubscription. 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.Specify the name of the database at the Subscriber containing the published data for @destination_db, a value of push for @subscription_type, and a value of replication support only for @sync_type. Informationen zum Aktualisieren von Abonnements finden Sie unter Create an Updatable Subscription to a Transactional Publication.For updating subscriptions, see Create an Updatable Subscription to a Transactional Publication.

  3. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addpushsubscription_agentaus.At the Publisher on the publication database, execute sp_addpushsubscription_agent. Weitere Informationen finden Sie unter Create a Push Subscription.For more information, see Create a Push Subscription.

  4. Starten Sie den Verteilungs-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen.Start the Distribution Agent to transfer replication objects and download the latest changes from the Publisher. Weitere Informationen finden Sie unter Synchronize a Push Subscription.For more information, see Synchronize a Push Subscription.

So wird ein Pullabonnement für eine Mergeveröffentlichung manuell initialisiertTo manually initialize a pull subscription to a merge publication

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind.Ensure that the schema and data exist on the subscription database. Sie können dazu eine Sicherung der Veröffentlichungsdatenbank auf dem Abonnenten wiederherstellen.This can be done by restoring a backup of the publication database at the Subscriber.

  2. Führen Sie auf dem Verleger sp_addmergesubscriptionaus.At the Publisher, execute sp_addmergesubscription. Geben Sie @publication, @subscriber, @subscriber_db und den Wert pull für @subscription_type an.Specify @publication, @subscriber, @subscriber_db, and a value of pull for @subscription_type. Damit wird das Pullabonnement registriert.This registers the pull subscription.

  3. Führen Sie auf dem Abonnenten für die Datenbank, die die veröffentlichten Daten enthält, sp_addmergepullsubscriptionaus.At the Subscriber on the database containing the published data, execute sp_addmergepullsubscription. Geben Sie für @sync_type den Wert none an.Specify a value of none for @sync_type.

  4. Führen Sie auf dem Abonnenten sp_addmergepullsubscription_agentaus.At the Subscriber, execute sp_addmergepullsubscription_agent. Weitere Informationen finden Sie unter Create a Pull Subscription.For more information, see Create a Pull Subscription.

  5. Starten Sie den Merge-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen.Start the Merge Agent to transfer replication objects and download the latest changes from the Publisher. Weitere Informationen finden Sie unter Synchronize a Pull Subscription.For more information, see Synchronize a Pull Subscription.

So wird ein Pushabonnement für eine Mergeveröffentlichung manuell initialisiertTo manually initialize a push subscription to a merge publication

  1. Stellen Sie sicher, dass das Schema und die Daten in der Abonnementdatenbank vorhanden sind.Ensure that the schema and data exist on the subscription database. Sie können dazu eine Sicherung der Veröffentlichungsdatenbank auf dem Abonnenten wiederherstellen.This can be done by restoring a backup of the publication database at the Subscriber.

  2. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addmergesubscriptionaus.At the Publisher on the publication database, execute sp_addmergesubscription. 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.Specify the name of the database at the Subscriber containing the published data for @subscriber_db, a value of push for @subscription_type, and a value of none for @sync_type.

  3. Führen Sie auf dem Verleger für die Veröffentlichungsdatenbank sp_addmergepushsubscription_agentaus.At the Publisher on the publication database, execute sp_addmergepushsubscription_agent. Weitere Informationen finden Sie unter Create a Push Subscription.For more information, see Create a Push Subscription.

  4. Starten Sie den Merge-Agent, um Replikationsobjekte zu übertragen und die neuesten Änderungen vom Verleger herunterzuladen.Start the Merge Agent to transfer replication objects and download the latest changes from the Publisher. Weitere Informationen finden Sie unter Synchronize a Push Subscription.For more information, see Synchronize a Push Subscription.

Weitere InformationenSee Also

Initialize a Transactional Subscription Without a Snapshot Initialize a Transactional Subscription Without a Snapshot
Sichern und Wiederherstellen von replizierten Datenbanken Back Up and Restore Replicated Databases
Bewährte Methoden für die ReplikationssicherheitReplication Security Best Practices