Share via


Databasespiegelingswaarnemer

Van toepassing op:SQL Server

Ter ondersteuning van automatische failover moet een databasespiegelingssessie worden geconfigureerd in de modus voor hoge veiligheid en moet er ook een derde serverexemplaar aanwezig zijn, ook wel de witness genoemd. De getuige is een optioneel exemplaar van SQL Server dat de spiegelserver in een sessie met hoge veiligheid laat herkennen of een automatische failover moet worden gestart. In tegenstelling tot de twee partners bedient de getuige de database niet. Het ondersteunen van automatische failover is de enige rol van de witness.

Opmerking

In de modus met hoge prestaties kan de witness de beschikbaarheid nadelig beïnvloeden. Als een witness is geconfigureerd voor een databasespiegelingssessie, moet de hoofdserver ten minste verbonden zijn met een van de andere serverexemplaren: de mirrorserver, de witness, of beide. Anders is de database niet meer beschikbaar en is het afdwingen van de service (met mogelijk gegevensverlies) onmogelijk. Daarom raden we voor de modus met hoge prestaties ten zeerste aan dat u de witness altijd op UIT houdt. Zie de bedrijfsmodi van databasespiegeling voor informatie over de impact van een witness op de prestatiemodus.

In de volgende illustratie ziet u een modus met hoge veiligheidssessie met een getuige.

Spiegelingssessie met een getuige

In dit onderwerp:

Een witness gebruiken in meerdere sessies

Een specifiek serverexemplaar kan fungeren als getuige in gelijktijdige databasespiegelingsessies, elk voor een verschillende database. Verschillende sessies kunnen bij verschillende partners zijn. In de volgende afbeelding ziet u een serverexemplaar dat een witness is in twee database-spiegelingssessies met verschillende partners.

Server-exemplaar dat een witness is voor 2 databases

Een exemplaar van een enkele server kan ook op hetzelfde moment functioneren als een getuige in sommige sessies en als een partner in andere sessies. In de praktijk functioneert een serverinstantie meestal echter als een getuige of een partner. Dit komt doordat de partners geavanceerde computers met voldoende hardware nodig hebben om een productiedatabase te ondersteunen, terwijl de witness kan worden uitgevoerd op elk beschikbaar Windows-systeem dat ONDERSTEUNING biedt voor SQL Server.

Aanbevelingen voor software en hardware

We raden u ten zeerste aan dat de getuige zich op een aparte computer van de partners bevindt. Databasespiegelingspartners worden alleen ondersteund door de SQL Server Standard-editie en sql Server Enterprise-editie. Getuigen worden daarentegen ook ondersteund door SQL Server Workgroup en SQL Server Express. Behalve tijdens een upgrade van een eerdere versie van SQL Server moeten de serverexemplaren in een spiegelingssessie allemaal dezelfde versie van SQL Server uitvoeren. Een SQL Server 2008-witness (10.0.x) wordt bijvoorbeeld ondersteund wanneer u een upgrade uitvoert van een SQL Server 2008 (10.0.x) spiegelingsconfiguratie, maar deze kan niet worden toegevoegd aan een bestaande of nieuwe SQL Server 2008 R2 (10.50.x) of latere spiegelingsconfiguratie.

Een witness kan draaien op elk betrouwbaar computersysteem dat compatibel is met een van deze edities van SQL Server. Het is echter raadzaam dat elk serverexemplaar dat als witness wordt gebruikt, overeenkomt met de minimale vereiste configuratie voor de versie van SQL Server Standard die u gebruikt. Zie Hardware- en softwarevereisten voor het installeren van SQL Server 2016 voor meer informatie over deze vereisten.

Rol van de Witness (Getuige) in Automatische Failover

Tijdens een databasespiegelingssessie bewaken alle serverexemplaren hun verbindingsstatus. Als de partners de verbinding met elkaar verbreken, vertrouwen ze op de getuige om ervoor te zorgen dat slechts één van hen de database bedient. Als een gesynchroniseerde mirrorserver de verbinding met de principal-server verliest, maar verbonden blijft met de witness, neemt de mirrorserver contact op met de witness om te bepalen of de witness de verbinding met de principal-server heeft verbroken:

  • Als de principal-server nog steeds is verbonden met de witness, vindt automatische failover niet plaats. In plaats daarvan blijft de hoofdserver de database bedienen terwijl logboekrecords worden verzameld om naar de mirrorserver te verzenden wanneer de partners opnieuw verbinding maken.

  • Als de witness ook is losgekoppeld van de principal-server, weet de mirrorserver dat de principal-database niet meer beschikbaar is. In dit geval start de mirrorserver onmiddellijk een automatische failover.

  • Als de mirrorserver is losgekoppeld van de witness en ook van de principal-server, is automatische failover niet mogelijk, ongeacht de status van de principal-server.

De vereiste dat ten minste twee van de serverexemplaren worden verbonden, wordt quorum genoemd. Quorum zorgt ervoor dat de database slechts door één partner tegelijk kan worden geleverd. Zie Quorum: How a Witness Affects Database Availability (Database Mirroring) voor informatie over hoe quorum werkt en de impact ervan op een sessie.

Een witness toevoegen of verwijderen

Een witness toevoegen

De witness verwijderen

Zie ook

Rolwisseling tijdens een databasespiegelingssessie (SQL Server)
Bedrijfsmodi voor databasespiegeling
Quorum: Hoe een waarnemer van invloed is op de beschikbaarheid van de database (Databasespiegeling)
Mogelijke fouten tijdens databasespiegeling
Statussen voor spiegeling (SQL Server)