A software solution offered by Microsoft SQL Server 2008 R2 to achieve high database availability. Database mirroring enables you to maintain a copy of your production database that could potentially be completely synchronized on a separate server for failover in the event of a failed production server or database. Database mirroring can be configured to provide no data loss and automatic failover. The basic concept of database mirroring is very simple. Database mirroring maintains a hot standby database (mirror database) that is kept in sync with the production database (principal database) by transferring transaction log records from the principal database to a mirror database over network, either synchronously or asynchronously. In case of a failure, the mirror database can be quickly accessed by clients.