Freigeben über


Spiegelungszustände (SQL Server)

Während einer Datenbankspiegelungssitzung befindet sich die gespiegelte Datenbank immer in einem bestimmten Zustand ( spiegelungszustand). Der Status der Datenbank spiegelt den Kommunikationsstatus, den Datenfluss und den Unterschied in den Daten zwischen den Partnern wider. Die Datenbankspiegelungssitzung übernimmt denselben Zustand wie die Prinzipaldatenbank.

Während einer Datenbankspiegelungssitzung überwachen die Serverinstanzen einander. Die Partner verwenden den Spiegelungszustand, um die Datenbank zu überwachen. Mit Ausnahme des PENDING_FAILOVER Zustands befinden sich die Hauptdatenbank und die Sicherheitskopie-Datenbank immer im gleichen Zustand. Wenn ein Zeuge für die Sitzung festgelegt ist, überwacht jeder Partner den Zeugen mithilfe seines Verbindungszustands (CONNECTED oder DISCONNECTED).

Die möglichen Spiegelungszustände der Datenbank sind wie folgt:

Spiegelungsstatus BESCHREIBUNG
SYNCHRONISIEREND Der Inhalt der Spiegeldatenbank liegt zeitlich hinter dem Inhalt der Prinzipaldatenbank. Der Prinzipalserver sendet Protokolldatensätze an den Spiegelserver, wodurch die Änderungen auf die Spiegeldatenbank angewendet werden, um sie vorwärts zu übertragen.

Am Anfang einer Datenbankspiegelungssitzung befindet sich die Datenbank im SYNCHRONIZING-Zustand. Der Hauptserver verwaltet die Datenbank, und der Spiegelserver versucht, aufzuholen.
SYNCHRONISIEREN Wenn der Spiegelserver zum Prinzipalserver ausreichend synchronisiert ist, ändert sich der Spiegelstatus in SYNCHRONIZED. Die Datenbank verbleibt in diesem Zustand, solange der Prinzipalserver weiterhin Änderungen an den Spiegelserver sendet, und der Spiegelserver wendet weiterhin Änderungen an der Spiegeldatenbank an.

Wenn die Transaktionssicherheit auf VOLLAUTOMATISCHES Failover eingestellt ist und sowohl automatisches als auch manuelles Failover im SYNCHRONIZED-Zustand unterstützt werden, gibt es nach einem Failover keinen Datenverlust.

Wenn die Transaktionssicherheit deaktiviert ist, sind einige Datenverluste immer möglich, auch im SYNCHRONIZED-Zustand.
AUSGESETZT Die Spiegelkopie der Datenbank ist nicht verfügbar. Die Hauptdatenbank läuft, ohne Protokolle an den Spiegelserver zu senden, ein Zustand, der als läuft ungeschützt bekannt ist. Dies ist der Zustand nach einem Failover.

Eine Sitzung kann auch aufgrund von Wiederherstellungsfehlern ausgesetzt werden oder wenn der Administrator die Sitzung aussetzt.

SUSPENDED ist ein fortbestehender Zustand, der Partnerabschaltungen und -starts überlebt.
ausstehendes Umschalten Dieser Zustand tritt nur auf dem Hauptserver auf, nachdem ein Failover begonnen hat, aber der Server ist noch nicht in die Spiegelrolle übergegangen.

Wenn das Failover initiiert wird, wechselt die Prinzipaldatenbank in den zustand PENDING_FAILOVER, beendet schnell alle Benutzerverbindungen und übernimmt die Spiegelrolle bald danach.
GETRENNT Der Partner hat die Kommunikation mit dem anderen Partner verloren.

Siehe auch

Überwachen der Datenbankspiegelung (SQL Server)