I'm trying to understand mirroring better - from what I can see, if a principal database is participating in mirroring, it can have all the normal backups performed on it the same as a non-mirrored database.
But my understanding is that mirroring works through sending tran logs from the principal to the mirrored database, and as such if I did a backup, wouldnt this affect the tran logs, unless the mirroring process uses a separate copy of the tran logs or something similar?
Its confusing...could someone clarify the internal operations of mirroring please and why backups dont affect it please?
The mirroring sends the individual log records across, either before the tran is considered committed (synchronous) or shortly after (async). It's not logshipping that sends the tran log backups over.
In the case of synchronous mirroring, since the transaction is not committed until the log records have been sent, the log backup could not remove those records from the log (log backups only remove inactive log entries) In the case of async mirroring, the log records will be marked as needed for mirroring and the log backup won't be able to remove those log records while they have that mark (much the same as transactional replication and CDC use to ensure that log records they need are not removed)