The witness doesn??™t decide that a failover is necessary, however.
The witness and the mirror both have to agree that the principal is unavailable before an
automated failover occurs. For example, it??™s possible that the witness can??™t contact the
principal, but the mirror can. In such a case, the mirror would not agree, and failover
would not occur.
This method of determining failover is vastly superior to that of database clustering,
which relies primarily on a heartbeat network connection. Database mirroring
essentially uses the heartbeat as well, but when three nodes are involved (the principal,
the mirror, and the witness), two nodes usually must agree that a failover should occur.
Table 8-1 illustrates the possible failure situations and how they interact with database
mirroring. As you can see, if automatic failover is important, a witness is not only
required, but it??™s critical that it remain running.
Table 8-1. Failover Matrix
Principal Is Mirror Is Witness
Available Available Is Used Result
No Yes Yes Systems fail over to the mirror.
No Yes No Manual failover must be initiated to move to the
mirror.
Pages:
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384