Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Datenbankbesitzer kann eine Datenbankspiegelungssitzung jederzeit anhalten und später fortsetzen. Beim Anhalten bleibt der Sitzungszustand erhalten, während die Spiegelung angehalten wird. Bei Engpässen kann das Anhalten nützlich sein, um die Leistung auf dem Prinzipalserver zu verbessern.
Wenn eine Sitzung angehalten wird, bleibt die Prinzipaldatenbank verfügbar. Beim Anhalten wird der Zustand der Spiegelsitzung auf SUSPENDED festgelegt, und die Spiegeldatenbank bleibt nicht mehr synchron mit der Prinzipaldatenbank, wodurch die Prinzipaldatenbank ungeschützt betrieben wird.
Es wird empfohlen, eine pausierte Sitzung schnell fortzusetzen, da das Transaktionsprotokoll nicht beschnitten werden kann, solange eine Sitzung zur Datenbankspiegelung angehalten bleibt. Wenn eine Datenbankspiegelungssitzung daher zu lange angehalten wird, wird das Transaktionsprotokoll ausgefüllt, sodass die Datenbank nicht verfügbar ist. Eine Erläuterung dazu, warum dies geschieht, finden Sie weiter unten in diesem Thema unter "Wie sich Anhalten und Fortsetzen auf die Protokollverkürzung auswirken".
Von Bedeutung
Nach einem erzwungenen Dienst wird die Spiegelung ausgesetzt, wenn der ursprüngliche Prinzipalserver sich wieder verbindet. Das Fortsetzen der Spiegelung in dieser Situation könnte auf dem ursprünglichen Prinzipalserver zu Datenverlust führen. Informationen zum Verwalten des potenziellen Datenverlustes finden Sie unter Betriebsmodi für die Datenbankspiegelung.
In diesem Thema:
So wirkt sich das Anhalten und Fortsetzen des Abschneidens von Protokollen auf
Wenn ein automatischer Prüfpunkt für eine Datenbank ausgeführt wird, wird normalerweise das zugehörige Transaktionsprotokoll nach der nächsten Protokollsicherung auf diesen Prüfpunkt gekürzt. Während eine Datenbankspiegelungssitzung angehalten bleibt, bleiben alle aktuellen Protokolldatensätze aktiv, da der Prinzipalserver darauf wartet, sie an den Spiegelserver zu senden. Die nicht angemeldeten Protokolldatensätze werden im Transaktionsprotokoll der Prinzipaldatenbank gesammelt, bis die Sitzung fortgesetzt wird und der Prinzipalserver die Protokolldatensätze an den Spiegelserver gesendet hat.
Wenn die Sitzung fortgesetzt wird, beginnt der Prinzipalserver sofort mit dem Senden der angesammelten Protokolldatensätze an den Spiegelserver. Nachdem der Spiegelserver bestätigt hat, dass er den Protokolldatensatz in die Warteschlange gestellt hat, der dem ältesten automatischen Prüfpunkt entspricht, schneidet der Prinzipalserver das Protokoll der Prinzipaldatenbank an diesen Prüfpunkt ab. Der Spiegelserver kürzt die Redo-Warteschlange beim gleichen Protokolleintrag. Da dieser Vorgang für jeden aufeinanderfolgenden Prüfpunkt wiederholt wird, wird das Protokoll schrittweise, von einem Prüfpunkt zum nächsten, verkürzt.
Hinweis
Weitere Informationen zu den Prüfpunkten und zur Protokollkürzung finden Sie unter Datenbankprüfpunkte (SQL Server).
Vermeiden eines vollständigen Transaktionsprotokolls
Wenn das Protokoll ausfüllt (entweder weil es seine maximale Größe erreicht oder die Serverinstanz nicht mehr Speicherplatz hat), kann die Datenbank keine weiteren Aktualisierungen ausführen. Um dieses Problem zu vermeiden, haben Sie zwei Alternativen:
Setzen Sie die Datenbankspiegelungssitzung fort, bevor das Protokoll ausgefüllt wird, oder fügen Sie mehr Protokollspeicher hinzu. Durch das Fortsetzen der Datenbankspiegelung kann der Hauptserver sein angesammeltes aktives Protokoll an den Spiegelserver senden und die Spiegeldatenbank in den Synchronisierungszustand versetzen. Der Spiegelserver kann dann das Protokoll auf dem Datenträger festigen und mit dem Wiederholen beginnen.
Beenden Sie die Datenbankspiegelungssitzung, indem Sie die Spiegelung entfernen.
Anstatt eine Sitzung anzuhalten, werden beim Entfernen der Spiegelung alle Informationen über die Spiegelungssitzung gelöscht. Jede Partnerserverinstanz behält ihre eigene Kopie der Datenbank bei. Wenn die vormalige Spiegelkopie wiederhergestellt wird, wird sie von der früheren Hauptkopie abweichen und um die seit der Unterbrechung der Sitzung verstrichene Zeit im Rückstand sein. Weitere Informationen finden Sie unter Entfernen der Datenbankspiegelung (SQL Server).
Verwandte Aufgaben
So unterbrechen oder fortsetzen Sie die Datenbankspiegelung
So beenden Sie die Datenbankspiegelung
Siehe auch
ALTER DATABASE (Transact-SQL)
Datenbankspiegelung (SQL Server)
Entfernen der Datenbankspiegelung (SQL Server)