Before Microsoft SQL Server 2012 and mechanism AlwaysOn were released, database administrators had only Database Mirroring as solution for replicating databases. It was the only option to get the "cheap" high availability. And Database Mirroring was not so good as it intended to be. Moreover, as my testings showed (and this is NOT written in documentation), it is NOT synchronous replication and transaction logs.
In short - we have studied the behavior of the database during intensive recording and different faults. What failures we saw:
- Planned shutdown of the master server (manual service stop) of the master server without any notification of the mirror server.
- Unplanned shutdown of the master server.
Oddly enough, it was a planned shutdown that showed that there is a difference between a mirrored database on the master and the mirror servers.
Therefore, I would not recommend to use Database Mirroring in production deployments, but take a look at the AlwaysOn technology.