Initialisieren eines Mergeabonnements ohne Momentaufnahme

HinweisHinweis

Diese Funktion wird in zukünftigen Versionen von Microsoft SQL Server nicht mehr bereitgestellt. Verwenden Sie diese Funktion beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird.

Abonnements von Mergeveröffentlichungen werden standardmäßig mit einer Momentaufnahme initialisiert, die vom Momentaufnahme-Agent generiert und vom Merge-Agent angewendet wird. In einigen Szenarien können Sie ein Abonnement mit einer anderen Methode, z. B. einer Sicherung, initialisieren. Mergereplikationen unterstützen das Initialisieren von Abonnements ohne Momentaufnahme sowohl für gefilterte als auch für ungefilterte Veröffentlichungen. Häufiger genutzt wird diese Möglichkeit bei ungefilterten Veröffentlichungen sowie bei Veröffentlichungen, die statische Filter verwenden. Veröffentlichungen, die parametrisierte Filter verwenden, werden in der Regel mit einer Momentaufnahme für eine Partition des Abonnenten initialisiert. Weitere Informationen finden Sie unter Snapshots für Mergeveröffentlichungen mit parametrisierten Filtern.

Abonnements sollten nach Möglichkeit mit einer Momentaufnahme initialisiert werden. Insbesondere unter den folgenden Bedingungen wird davon abgeraten, ein Abonnement ohne eine Momentaufnahme zu initialisieren.

  • Bei der Nachverfolgung auf Spaltenebene, beim vertikalen Filtern oder bei Schemaänderungen auf dem Verleger. Das Initialisieren eines Abonnements ohne Momentaufnahme kann zu mangelnder Konvergenz führen.

  • Wenn Sie die Websynchronisierung verwenden, werden Momentaufnahmedateien auf dem Abonnenten repliziert, aber nicht verwendet.

  • Bei der erneuten Initialisierung des Abonnements.

  • Wenn Sie Leistungsverbesserungen durch die Verwendung vorausberechneter Partitionen bereitstellen müssen.

Gehen Sie zum Initialisieren eines Mergeabonnements aus einer Sicherung oder mithilfe einer anderen Methode wie folgt vor:

  1. Fügen Sie den Tabellen, die in der Mergereplikation verwendet werden, eine uniqueidentifier-Spalte mit der rowguid und NOT NULL-Spaltenattribute hinzu.

  2. Nehmen Sie eine Sicherung der Datenbank vor, die Sie zum Initialisieren des Abonnenten verwenden.

  3. Erstellen Sie eine Veröffentlichung, und generieren Sie die Momentaufnahme für die Veröffentlichung. Das Schema und die Daten aus den veröffentlichten Tabellen in der Momentaufnahme werden nicht verwendet. Die Momentaufnahme ist dennoch erforderlich, da sie Systemobjekte und Metadaten enthält, auf die die Replikation angewiesen ist. Diese Objekte und Metadaten werden während der Erstsynchronisierung auf den Abonnenten kopiert.

  4. Stellen Sie die Sicherung auf dem Abonnenten wieder her, oder kopieren Sie die Daten auf andere Weise. Wenn Sie eine Sicherung wiederherstellen, geben Sie nicht die Option KEEP_REPLICATION an. Diese Option dient dazu, die Replikationseinstellungen während der Wiederherstellung beizubehalten. Da die Sicherung vom Verleger stammt, lautet das Ziel, die Verlegereinstellungen aus der Datenbank zu entfernen. Die wiederhergestellte Datenbank enthält nach der Erstsynchronisierung die erforderlichen Abonnenteneinstellungen.

  5. Erstellen Sie ein Abonnement, und geben Sie dabei an, dass das Abonnement manuell initialisiert wird.

    HinweisHinweis

    Wenn ein Abonnement ohne Momentaufnahme initialisiert wird, muss das Konto, über das der SQL Server-Dienst auf dem Verleger ausgeführt wird, Schreibberechtigungen für den Momentaufnahmeordner auf dem Verteiler besitzen. Weitere Informationen zu Berechtigungen finden Sie unter Sicherheitsmodell des Replikations-Agents.

    Weitere Informationen finden Sie in den folgenden Themen:

  6. Führen Sie mit dem Merge-Agent eine Erstsynchronisierung aus, um die für die Anwendung erforderlichen Objekte und Metadaten zu kopieren. Der Abonnent ist damit synchronisiert und bereit, inkrementelle Änderungen vom Verleger zu akzeptieren.