Database Mirroring is a one of the High Availability feature in SQL Server. Mirroring is database level HA. When you configure mirroring to any database, it should maintain three servers, there are
But witness server is an optional server. The client is connecting to principal server and accessing the database, at any time principal server is down immediately fail-over to mirror server(if witness server is available and running ) otherwise do manually fail-over to mirror server.
To get more information about mirroring click on below link