Database mirroring is a leading software solution for improving the availability of the database. Principal role is called the primary server, Mirror role is called the mirror. Mirroring maintains two copies of databases synchronized and minimize data loss and seamless DB connection of applications.
It is required a total of three SQL Server instance for the configuration. (Availability priority mode) Principal role and the Mirror server role, and it is required a server to monitor (Witness). Monitor Server supports automatic failover in a way to make it work with only one main server of the failover partner at the time specified by monitoring the principal and mirror servers.
The specified server can be configured for multiple simultaneous DB mirroring session as a Partner or as a Witness. All sessions (and its database) are configured and operated independently from the other sessions. The database server is linked to other primary application program server (web server) to operate. If monitor (Witness) server role is installed to application program server successfully, hardware is not necessary for a separate monitor. (* We recommend 10 or fewer database depending on the transaction amount in database unit, not server unit)
In the database mirroring session, you can switch between the main role and the mirror role through role switching process. When switching roles, the mirror server acts as a failover partner for the primary server. Mirror server creates a copy of the DB to take over the main role in online state to use the new primary database. Even one of servers has been down, the database is still working thanks to high availability. When previous primary server is available (recovery), it will act as a mirror server and therefore it becomes the new mirror database. (Role interconversion)