Database mirroring is a relational database management (RDMS) technique to maintain consistent data in spite of high availability needs by creating redundant copies of a dataset.
A database mirror is a complete backup of the database that can be used if the primary database fails. Transactions and changes to the primary database are transferred directly to the mirror and processed immediately so the mirror is always up-to-date and available as a “hot” standby.
Database mirroring is a form of data replication. While all transactional systems require some form of data replication in order to prevent loss and maintain high availability, not all databases use mirroring. Among commercial RDBMS systems, Microsoft SQL Server is notable for its use of database mirroring.
Thanks to automatic failover, database mirroring facilitates high availability of data systems and the applications that use them. It also provides transactional consistency so that the data is always up-to-date and consistent.