Erstellen und Anwenden des Snapshots
Snapshots werden nach dem Erstellen einer Publikation vom Snapshot-Agent generiert. Sie können folgendermaßen generiert werden:
- Sofort. Standardmäßig wird ein Snapshot für eine Mergepublikation sofort nach dem Erstellen der Publikation im Assistenten für neue Publikation generiert.
- Zu einem geplanten Zeitpunkt. Geben Sie auf der Seite Snapshot-Agent des Assistenten für neue Publikation oder beim Verwenden von gespeicherten Prozeduren bzw. Replikationsverwaltungsobjekten (RMO) einen Zeitpunkt an.
- Manuell. Führen Sie den Snapshot-Agent von der Eingabeaufforderung oder in SQL Server Management Studio aus. Weitere Informationen zum Ausführen von Agents finden Sie unter Programming Replication Agent Executables und Vorgehensweise: Starten und Beenden eines Replikations-Agents (SQL Server Management Studio).
Bei der Mergereplikation wird jedes Mal ein Snapshot generiert, wenn der Snapshot-Agent ausgeführt wird. Bei der Transaktionsreplikation hängt die Snapshotgenerierung von der Einstellung der immediate_sync-Publikationseigenschaft ab. Ist die Eigenschaft auf TRUE festgelegt (die Standardeinstellung bei der Verwendung des Assistenten für neue Publikation), wird bei jedem Ausführen des Snapshot-Agents ein Snapshot generiert, der jederzeit auf einen Abonnenten angewendet werden kann. Ist die Eigenschaft auf FALSE festgelegt (die Standardeinstellung bei der Verwendung von sp_addpublication), wird der Snapshot nur dann generiert, wenn seit dem letzten Ausführen des Snapshot-Agents ein neues Abonnement hinzugefügt wurde. Abonnenten können erst synchronisiert werden, nachdem der Snapshot-Agent abgeschlossen ist.
Generierte Snapshots werden im Standardsnapshotordner auf dem Verteiler gespeichert. Sie können Snapshotdateien aber auch auf Wechselmedien wie z. B. Wechseldatenträgern, CD-ROMs oder an anderen Speicherorten als dem Standardsnapshotordner speichern. Darüber hinaus können Sie die Snapshotdateien komprimieren, sodass sie leichter zu speichern und zu übertragen sind, und Skripts vor oder nach der Anwendung des Snapshots auf den Abonnenten ausführen. Weitere Informationen zu diesen Optionen finden Sie unter Snapshotoptionen.
Handelt es sich um einen Snapshot für eine Mergepublikation, die parametrisierte Filter verwendet, wird der Snapshot in einem zweiteiligen Prozess erstellt. Zuerst wird ein Schemasnapshot erstellt, der die Replikationsskripts und das Schema der veröffentlichten Objekte enthält, nicht jedoch die Daten. Jedes Abonnement wird dann mit einem Snapshot initialisiert, der die aus dem Schemasnapshot kopierten Skripts und das Schema sowie die Daten enthält, die zur Partition des Abonnements gehören. Weitere Informationen finden Sie unter Snapshots für Mergepublikationen mit parametrisierten Filtern.
Nachdem der Snapshot auf dem Verleger erstellt und am standardmäßigen bzw. einem anderen Snapshotspeicherort gespeichert wurde, kann er an den Abonnenten übertragen und auf diesen angewendet werden. Der Verteilungs-Agent (bei Snapshot- oder Transaktionsreplikation) bzw. der Merge-Agent (bei Mergereplikation) überträgt den Snapshot und wendet die Schema- und Datendateien während der Erstsynchronisierung auf die Abonnement-Datenbank auf dem Abonnenten an. Standardmäßig erfolgt die Erstsynchronisierung unmittelbar nach dem Erstellen einer Abonnements, wenn Sie den Assistenten für neue Publikation verwenden. Dieses Verhalten wird von der Option Initialisierungszeitpunkt auf der Seite Abonnements initialisieren des Assistenten gesteuert. Wenn Snapshots generiert werden, nachdem ein Abonnement initialisiert wurde, werden sie nicht auf den Abonnenten angewendet, es sei denn, ein Abonnement ist für die erneute Initialisierung markiert. Weitere Informationen finden Sie unter Erneutes Initialisieren eines Abonnements.
Nachdem der Verteilungs- bzw. der Merge-Agent den Anfangssnapshot angewendet hat, gibt er nachfolgende Aktualisierungen und andere Datenänderungen weiter. Wenn Snapshots an Abonnenten verteilt und auf ihnen angewendet werden, sind nur die Abonnenten betroffen, die auf einen Anfangssnapshot oder neue Snapshots warten. Andere Abonnenten dieser Publikation (diejenigen, die bereits Einfügungen, Aktualisierungen, Löschungen oder andere Änderungen der veröffentlichten Daten empfangen) sind nicht betroffen.
So erstellen Sie den Anfangssnapshot und wenden ihn an
- SQL Server Management Studio: Vorgehensweise: Erstellen und Anwenden des Anfangssnapshots (SQL Server Management Studio)
- Replikationsprogrammierung mit Transact-SQL: How to: Create the Initial Snapshot (Replication Transact-SQL Programming)
- RMO-Programmierung: How to: Create the Initial Snapshot (RMO Programming)
So zeigen Sie den Standardspeicherort für Snapshotordner an oder ändern ihn
- SQL Server Management Studio: Vorgehensweise: Angeben des standardmäßigen Snapshotspeicherorts (SQL Server Management Studio)
- Replikationsprogrammierung: How to: Configure Publishing and Distribution (Replication Transact-SQL Programming)
- RMO-Programmierung: How to: Configure Publishing and Distribution (RMO Programming)
Siehe auch
Konzepte
Initialisieren eines Abonnements mit einem Snapshot
Sichern des Snapshotordners
Andere Ressourcen
sp_addpublication (Transact-SQL)