Strategien zum Sichern und Wiederherstellen einer Mergereplikation
Sichern Sie bei Mergereplikationen regelmäßig die folgenden Datenbanken:
- Publikationsdatenbank auf dem Verleger
- Verteilungsdatenbank auf dem Verteiler
- Abonnementdatenbank auf den einzelnen Abonnenten
- master- und msdb-Systemdatenbanken auf dem Verleger, dem Verteiler und allen Abonnenten. Diese Datenbanken sollten zur selben Zeit wie alle anderen Datenbanken und die entsprechende Replikationsdatenbank gesichert werden. Sichern Sie also z. B. die master- und msdb-Datenbanken auf dem Verleger immer dann, wenn Sie auch die Publikationsdatenbank sichern. Beim Wiederherstellen der Publikationsdatenbank müssen Sie sicherstellen, dass die master- und msdb-Datenbanken hinsichtlich der Replikationskonfiguration und der Replikationseinstellungen mit der Publikationsdatenbank übereinstimmen.
Wenn Sie regelmäßige Protokollsicherungen ausführen, sollten in den Protokollsicherungen auch alle replikationsrelevanten Änderungen erfasst werden. Wenn Sie keine Protokollsicherungen ausführen, sollte immer dann eine Sicherung erfolgen, wenn eine replikationsrelevante Änderung vorgenommen wurde. Weitere Informationen finden Sie unter Häufige Aktionen, die eine aktualisierte Sicherung erfordern.
Entscheiden Sie sich zum Sichern und Wiederherstellen der Publikationsdatenbank für eine der unten genannten Herangehensweisen, und befolgen Sie dann die entsprechenden Empfehlungen für die Verteilungsdatenbank und die Abonnementdatenbanken.
Sichern und Wiederherstellen der Publikationsdatenbank
Für die Wiederherstellung einer Mergepublikations-Datenbank gibt es zwei Herangehensweisen. Nach dem Wiederherstellen der Publikationsdatenbank aus einer Sicherung müssen Sie sich für eine der folgenden beiden Varianten entscheiden:
- Synchronisieren der Publikationsdatenbank mit einer Abonnementdatenbank
- Erneutes Initialisieren aller Abonnements der Publikationen in der Publikationsdatenbank
Durch die Verwendung dieser Methoden wird sichergestellt, dass nach einer Wiederherstellung der Verleger und alle Abonnenten synchronisiert werden.
Hinweis: |
---|
Wenn Tabellen Identitätsspalten enthalten, müssen Sie sicherstellen, dass nach einer Wiederherstellung die richtigen Identitätsbereiche zugewiesen werden. Weitere Informationen finden Sie unter Replizieren von Identitätsspalten. |
Synchronisieren der Publikationsdatenbank
Durch das Synchronisieren einer Publikationsdatenbank mit einer Abonnementdatenbank können Sie aus einer oder mehreren Abonnementdatenbank(en) jene Änderungen uploaden, die zuvor in der Publikationsdatenbank zwar vorgenommen, aber in der wiederhergestellten Sicherung nicht vorhanden sind. Welche Daten dabei geuploadet werden können, hängt davon ab, wie die Publikation gefiltert wird:
- Wird die Publikation gar nicht gefiltert, sollten Sie die Publikationsdatenbank durch Synchronisieren mit einem aktuellen Abonnenten auf den neuesten Stand bringen.
- Wenn die Publikation gefiltert ist, können Sie möglicherweise die Publikationsdatenbank nicht auf den aktuellen Stand bringen. Nehmen wir einmal an, es gibt eine Tabelle, die so partitioniert ist, dass jedes Abonnement nur die Kundendaten für eine der folgenden Verkaufsregionen erhält: Nord, Ost, Süd und West. Wenn für jede Datenpartition mindestens ein Abonnent vorhanden ist, würde es reichen, die Publikationsdatenbank mit einem Abonnenten für jede Partition zu synchronisieren, um sie auf den neuesten Stand zu bringen. Wenn aber beispielsweise die Daten in der Partition West auf keinen Abonnenten repliziert wurden, können diese Daten auf dem Verleger nicht auf den aktuellen Stand gebracht werden.
Wichtig: |
---|
Wenn eine Publikationsdatenbank mit einer Abonnementdatenbank synchronisiert wird, kann es passieren, dass veröffentlichte Tabellen nach dem Wiederherstellen aus der Sicherung einen neueren Stand aufweisen als nicht veröffentlichte Tabellen. |
Wenn Sie die Publikationsdatenbank mit einem Abonnenten synchronisieren, auf dem eine frühere Version von Microsoft SQL Server als Microsoft SQL Server 2005 ausgeführt wird, kann das Abonnement nicht anonym sein – es muss sich um ein Clientabonnement oder ein Serverabonnement handeln (in früheren Versionen als lokales Abonnement bzw. globales Abonnement bezeichnet).
So synchronisieren Sie ein Abonnement
- Microsoft SQL Server Management Studio: Vorgehensweise: Synchronisieren eines Pushabonnements (SQL Server Management Studio)
- SQL Server Management Studio: Vorgehensweise: Synchronisieren eines Pullabonnements (SQL Server Management Studio)
- Replikationsprogrammierung mit Transact-SQL: Vorgehensweise: Synchronisieren eines Pushabonnements (Replikationsprogrammierung)
- Replikationsprogrammierung mit Transact-SQL: Vorgehensweise: Synchronisieren eines Pullabonnements (Replikationsprogrammierung)
Erneutes Initialisieren aller Abonnements
Durch das erneute Initialisieren aller Abonnements wird sichergestellt, dass alle Abonnenten konsistent mit der wiederhergestellten Publikationsdatenbank sind. Diese Herangehensweise sollten Sie verwenden, wenn Sie eine ganze Topologie auf den früheren Status zurücksetzen möchten, der in einer bestimmten Sicherung der Publikationsdatenbank festgehalten ist. So kann es z. B. erforderlich sein, alle Abonnements neu zu initialisieren, wenn Sie nach einer fehlerhaft ausgeführten Batchoperation einen früheren Zustand Ihrer Publikationsdatenbank wiederherstellen möchten.
Generieren Sie bei Wahl dieser Option direkt nach dem Wiederherstellen der Publikationsdatenbank einen neuen Snapshot, der an die erneut initialisierten Abonnenten übertragen wird.
So initialisieren Sie ein Abonnement erneut
- SQL Server Management Studio: Vorgehensweise: Erneutes Initialisieren eines Abonnements (SQL Server Management Studio)
- Replikationsprogrammierung mit Transact-SQL: How to: Reinitialize a Subscription (Replication Transact-SQL Programming)
So können Sie einen Snapshot erstellen und anwenden
- 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)
- SQL Server Management Studio: Vorgehensweise: Generieren eines Snapshots für eine Mergepublikation mit parametrisierten Filtern (SQL Server Management Studio)
- Replikationsprogrammierung mit Transact-SQL: How to: Create a Snapshot for a Merge Publication with Parameterized Filters (Replication Transact-SQL Programming)
Sichern und Wiederherstellen der Verteilungsdatenbank
Bei einer Mergereplikation sollte die Verteilungsdatenbank in regelmäßigen Abständen gesichert werden. Wenn die Sicherung nicht älter als die kürzeste Beibehaltungsdauer aller Publikationen ist, die den Verteiler verwenden, kann die Verteilungsdatenbank jederzeit problemlos wiederhergestellt werden. Wenn es z. B. drei Publikationen mit Beibehaltungsdauerwerten von 10, 20 und 30 Tagen gibt, sollte die zum Wiederherstellen der Datenbank verwendete Sicherung höchstens 10 Tage alt sein. Die Verteilungsdatenbank spielt in einer Mergereplikation nur eine begrenzte Rolle: Sie speichert keine Daten, die bei der Änderungsnachverfolgung verwendet werden, und sie bietet auch keine temporäre Speicherung von Mergereplikationsänderungen, die an Abonnementdatenbanken weitergeleitet werden (wie dies bei Transaktionsreplikationen der Fall ist).
Sichern und Wiederherstellen einer Abonnementdatenbank
Um die erfolgreiche Wiederherstellung einer Abonnementdatenbank sicherzustellen, sollten die Abonnenten eine Synchronisierung mit dem Verleger vornehmen, bevor die Abonnementdatenbank gesichert wird. Auch nach dem Wiederherstellen der Abonnementdatenbank sollte eine Synchronisierung vorgenommen werden:
- Durch das Synchronisieren mit dem Verleger vor dem Sichern der Abonnementdatenbank wird sichergestellt, dass sich das Abonnement noch in der Beibehaltungsdauer der Publikation befindet, wenn der Abonnent wiederhergestellt wird. Nehmen wir beispielsweise an, dass eine Publikation mit einer Beibehaltungsdauer von 10 Tagen vorliegt. Die letzte Synchronisierung liegt 8 Tage zurück, und jetzt wird die Sicherung ausgeführt. Wenn die Sicherung 4 Tage später wiederhergestellt wird, ist die letzte Synchronisierung 12 Tage her. Dies überschreitet die Beibehaltungsdauer. In diesem Fall müssten Sie den Abonnenten erneut initialisieren. Wenn vor der Sicherung eine Synchronisierung mit dem Abonnenten stattgefunden hätte, würde sich die Abonnementdatenbank noch in der Beibehaltungsdauer befinden.
Das Alter der Sicherung darf die kürzeste Beibehaltungsdauer aller vom Abonnenten abonnierten Publikationen nicht überschreiten. Wenn ein Abonnent beispielsweise drei Publikationen abonniert, deren Beibehaltungsdauerwerte 10, 20 und 30 Tage betragen, sollte die zum Wiederherstellen der Datenbank verwendete Sicherung höchstens 10 Tage alt sein. - Durch Synchronisieren der Abonnementdatenbank mit allen ihren Publikationen nach einer erfolgten Wiederherstellung wird sichergestellt, dass der Abonnent alle Änderungen auf dem Verleger übernehmen kann.
So legen Sie die Beibehaltungsdauer für die Publikation fest
- SQL Server Management Studio: Vorgehensweise: Festlegen des Ablaufdatums von Abonnements (SQL Server Management Studio)
- Replikationsprogrammierung mit Transact-SQL: How to: Set the Expiration Period for Subscriptions (Replication Transact-SQL Programming)
So synchronisieren Sie ein Abonnement
- SQL Server Management Studio: Vorgehensweise: Synchronisieren eines Pushabonnements (SQL Server Management Studio)
- SQL Server Management Studio: Vorgehensweise: Synchronisieren eines Pullabonnements (SQL Server Management Studio)
- Replikationsprogrammierung mit Transact-SQL: Vorgehensweise: Synchronisieren eines Pushabonnements (Replikationsprogrammierung)
- Replikationsprogrammierung mit Transact-SQL: Vorgehensweise: Synchronisieren eines Pullabonnements (Replikationsprogrammierung)
Sichern und Wiederherstellen einer Wiederveröffentlichungs-Datenbank
Wenn eine Datenbank Daten von einem Verleger abonniert und dieselben Daten selbst auf anderen Abonnementdatenbanken veröffentlicht, wird sie als Wiederveröffentlichungs-Datenbank bezeichnet. Befolgen Sie beim Wiederherstellen einer Wiederveröffentlichungs-Datenbank die in diesem Thema in den Abschnitten zum Sichern und Wiederherstellen einer Publikationsdatenbank sowie zum Sichern und Wiederherstellen einer Abonnementdatenbank beschriebenen Richtlinien.
Siehe auch
Konzepte
Sichern und Wiederherstellen replizierter Datenbanken
Andere Ressourcen
Sichern und Wiederherstellen von Datenbanken in SQL Server