Link to home
Start Free TrialLog in
Avatar of HelderConde
HelderConde

asked on

Database Mirroring with multiple databases?

Dear colleagues,

I'm have 3 SQL 2005 Standard servers, that will be used for database mirroring. I've already set up one database for High Availability, with automatic failover (using a witness) and it seems to be working Ok.

However, at http://www.microsoft.com/technet/prodtechnol/sql/2005/dbmirror.mspx I read something that made my very much concerned:

********** From Technet **************

"Multi-Database Issues
Many applications make use of multiple databases on a single server. One application may reference multiple databases, or perhaps many applications all make use of several databases. However, database mirroring works with a single database at a time. You need to take this into account when designing mirroring into your database architecture.

If you desire the High Availability mode, your best fit will be when one application matches up with one database. Then if an automatic failover occurs, the application no longer requires any databases on the principal server. Consider what might happen if you have multiple databases on a single server and operate in the High Availability mode. If there is a physical server outage, a SQL Server instance failure, or a communication failure, all the databases would automatically fail over to the standby server, and their mirrors would then become new principal databases. If the witness is visible, the application could connect to the new principal databases. But what would happen if one of the databases incurred a torn page from a disk fault, so that only the one database failed over? In that case, it might be impossible to get the application to connect to all the right databases.

Therefore applications that rely on multiple databases will not be good candidates for the High Availability mode of database mirroring. You may be able to use safety OFF, with the realization that you will not have automatic failover, but you will have a high-performance method of keeping another database server in sync."

********** End ***************

The concern is here: "applications that rely on multiple databases will not be good candidates for the High Availability mode of database mirroring." I have around 50 different databases I will be adding to the SQL Servers and I'd like them all to be mirrored.

Does this mean that it's impossible to do it? I mean, I'm Ok with the idea that in an event of a failure, EVERYTHING is failed-over to the mirror (not only the database that actually failed). No problem. I just don't want to be limited to mirroring a single-database at a time...

Am I missing something here?

Thanks in advance,

Helder Conde
ASKER CERTIFIED SOLUTION
Avatar of Ted Bouskill
Ted Bouskill
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of HelderConde
HelderConde

ASKER

Just wanted to share what was my decision: we went with clustering.

More complex, more expensive... But works flawlessly so far and will allow multiple databases.

Best regards and thanks for the help!

Helder Conde
Yep, clustering is great.  Now that I've used it I can't imagine running a farm without it.