Does the Witness only monitor the SQL servers or does it handle any transactions?
From the link below:
“The witness server assists the principal or mirror in forming a quorum. If a witness server is present, a loss of either the principal database or the mirror database leaves two servers to form a quorum. If the principal cannot see the mirror server, but it can form a quorum with the witness, it can keep its database in service. Similarly, if the mirror and witness servers cannot see the principal server, and the mirror server can form a quorum with the witness, the mirror can take on the role of a new principal server.”
The Witness does not perform any transaction and is used just to manage the failover if the Principal or Mirror go down.
What happens if the Witness goes down?
In the case of simply a Witness Server loss what happens is that automatic failover is no longer possible. This does bring up other issues that are outlined below. Also check the Mirroring White Paper link below for more details on other Witness Server Loss Scenarios.
When the witness server fails, mirroring continues but no automatic failover is possible. Loss of just one more server will mean there is no quorum, and the principal database will no longer be able to serve the database.
When you restore the Witness Server W, the partner servers Server A and Server B keep their original roles.
For complete discussion on Mirroring go to http://www.microsoft.com/technet/prodtechnol/sql/2005/dbmirror.mspx#EFAA
I don't understand something. Each server (principal, mirror, witness) has a unique public IP. So in case of crash of principal, with automatic failover, mirror takes control, but IP is different, so we assume that we need to change all IPs of our applications website?