We are using SQL Server 2008 database mirroring between two servers that are on opposite coasts over a VPN connection. This is working well for us.
At the principal location, we perform your typical full backups and transaction log backups.
The mirror location is not set for automatic failover, but we do have instances where we make it the principal to be able to serve our users.
Recently, we had a major power situation at our principal location. The SQL Server was powered down unexpectedly. We found ourselves in a situation where the mirror database was unable to be recovered. We are not sure why, but the reason for it is not the thrust of my question. The fact is that it is possible to lose our principal and then find ourselves in a position where our mirror database cannot be brought online.
At this point, we would need to restore from backups. The problem is that the backups are still at the principal location. We could copy them across the VPN connection, but that would more than double our bandwidth requirements, something we'd like to avoid if we could.
What we really would like to be able to do is have some other process that runs at the mirror location and makes a backup of the mirror database. However, SQL Server will not let you make a backup of a mirror database (because it is always in "Restoring..." mode). We can create a snapshot of the mirror, but that's not a true backup and you cannot backup a snapshot.
You also cannot use the Copy Database wizard to create a copy of a snapshot (it will let you try, but then fail when actually running).
So, long story short, we need a method to backup either a mirror database or a database snapshot. We're open to third party tools, but prefer to not change HOW we are currently mirroring the database (using SQL Server database mirroring).
Looking for ideas. Thanks.