Database Mirroring Witness
Zur Unterstützung eines automatischen Failovers muss eine Datenbank-Spiegelungssitzung im Modus für hohe Sicherheit konfiguriert sein und außerdem eine dritte Serverinstanz besitzen, die als Zeugebezeichnet wird. Der Zeuge ist eine optionale Instanz von SQL Server , die es dem Spiegelserver in einer Sitzung mit dem Modus für hohe Sicherheit ermöglicht, zu erkennen, ob ein automatisches Failover initiiert werden soll. Im Gegensatz zu den beiden Partnern stellt der Zeuge die Datenbank nicht bereit. Die Unterstützung des automatischen Failovers ist die einzige Aufgabe des Zeugen.
Hinweis
Im Modus für hohe Leistung kann sich der Zeuge negativ auf die Verfügbarkeit auswirken. Wenn ein Zeuge für eine Datenbank-Spiegelungssitzung konfiguriert ist, muss der Prinzipalserver mindestens mit einer der anderen Serverinstanzen verbunden sein, also mit dem Spiegelserver oder dem Zeugen oder mit beiden. Andernfalls ist die Datenbank nicht mehr verfügbar und das Erzwingen des Diensts (mit möglichem Datenverlust) ist nicht möglich. Daher wird beim Modus für hohe Leistung dringend empfohlen, die Zeugeneinstellung immer auf OFF zu belassen. Informationen zu den Auswirkungen eines Zeugen auf den Hochleistungsmodus finden Sie unter Betriebsmodi der Datenbankspiegelung.
In der folgende Abbildung wird eine Sitzung im Modus für hohe Sicherheit mit einem Zeugen dargestellt.
In diesem Thema:
Verwenden eines Zeugen in mehreren Sitzungen
Eine bestimmte Serverinstanz kann als Zeuge in gleichzeitigen Datenbank-Spiegelungssitzungen agieren – jeweils für eine unterschiedliche Datenbank. Verschiedene Sitzungen können dabei mit unterschiedlichen Partnern ablaufen. In der folgenden Abbildung ist eine Serverinstanz dargestellt, die Zeuge zweier Datenbank-Spiegelungssitzungen mit unterschiedlichen Partnern ist.
Eine einzelne Serverinstanz kann auch gleichzeitig in bestimmten Sitzungen als Zeuge und in anderen als Partner eingesetzt werden. In der Praxis fungiert eine Serverinstanz jedoch in der Regel entweder als Zeuge oder als Partner. Dies liegt daran, dass die Partner anspruchsvolle Computer benötigen, die über genügend Hardware verfügen, um eine Produktionsdatenbank zu unterstützen, während der Zeuge auf jedem verfügbaren Windows-System ausgeführt werden kann, das SQL Server 2014 unterstützt.
Software- und Hardwareempfehlungen
Sie sollten den Zeugen unbedingt auf einem von den Partnern separaten Computer platzieren. Datenbank-Spiegelungspartner werden nur von SQL Server Standard Edition und von SQL Server Enterprise Edition unterstützt. Zeugen hingegen werden auch von SQL Server Workgroup und SQL Server Express unterstützt. Außer während eines Upgrades von einer früheren Version von SQL Servermuss in einer Spiegelungssitzung auf allen Serverinstanzen dieselbe Version von SQL Serverausgeführt werden. Ein SQL Server 2008 -Zeuge wird beispielsweise unterstützt, wenn Sie von einer Spiegelungskonfiguration der Version SQL Server 2008 aktualisieren, er kann jedoch nicht einer vorhandenen oder neuen Spiegelungskonfiguration der Version SQL Server 2008 R2 oder höher hinzugefügt werden.
Ein Zeuge kann auf jedem zuverlässigen Computersystem ausgeführt werden kann, das eine der Editionen von SQL Serverunterstützt. Es wird jedoch empfohlen, dass jede als Zeuge verwendete Serverinstanz der Mindestkonfiguration entspricht, die für die ausgeführte Version von SQL Server Standard Edition erforderlich ist. Weitere Informationen zu diesen Anforderungen finden Sie unter Hardware- und Softwareanforderungen für die Installation SQL Server 2014.
Rolle des Zeugen beim automatischen Failover
Während der gesamten Dauer einer Datenbank-Spiegelungssitzung überwachen alle Serverinstanzen ihren Verbindungsstatus. Werden die Partner voneinander getrennt, können Sie nur anhand des Zeugen sicherstellen, dass nur einer von ihnen aktuell die Datenbank bedient. Wenn ein synchronisierter Spiegelserver seine Verbindung mit dem Prinzipalserver verliert, jedoch weiterhin mit dem Zeugen verbunden bleibt, kontaktiert der Spiegelserver den Zeugen, um zu ermitteln, ob der Zeuge seine Verbindung mit dem Prinzipalserver verloren hat:
Wenn der Prinzipalserver weiterhin mit dem Zeugen verbunden ist, erfolgt kein automatisches Failover. Stattdessen bedient der Prinzipalserver weiterhin die Datenbank und sammelt Protokolldatensätze, die zum Spiegelserver gesendet werden, wenn die Verbindung zwischen den Partnern erneut hergestellt wird.
Wenn auch die Verbindung zwischen dem Zeugen und dem Prinzipalserver getrennt ist, weiß der Spiegelserver, dass die Prinzipaldatenbank nicht mehr verfügbar ist. In diesem Fall initiiert der Spiegelserver sofort ein automatisches Failover.
Wenn die Verbindung zwischen dem Spiegelserver und dem Zeugen und auch die Verbindung zwischen dem Spiegelserver und dem Prinzipalserver getrennt ist, ist unabhängig vom Status des Prinzipalservers kein automatisches Failover möglich.
Die Anforderung, dass mindestens zwei der Serverinstanzen verbunden sein müssen, wird als Quorumbezeichnet. Durch das Quorum wird sichergestellt, dass die Datenbank jeweils immer nur von einem Partner bedient werden kann. Informationen zur Funktionsweise des Quorums und zu den Auswirkungen auf eine Sitzung finden Sie unter Quorum: Auswirkungen eines Zeugen auf die Datenbankverfügbarkeit (Datenbankspiegelung).
So fügen Sie einen Zeugen hinzu oder entfernen ihn
So fügen Sie einen Zeugen hinzu
So entfernen Sie den Zeugen
Weitere Informationen
Rollenwechsel während einer Datenbank-Spiegelungssitzung (SQL Server)
Database Mirroring Operating Modes
Quorum: Auswirkungen eines Zeugen auf die Datenbankverfügbarkeit (Datenbankspiegelung)
Mögliche Fehler während der Datenbankspiegelung
Spiegelungsstatus (SQL Server)