If you haven't read and still looking for the information on DR farm configuration with MOSS 2007 then you can refer the TechNet article. In this post i have explained how to configure the DR farm with SharePoint 2010 and what are the improvements we have in SharePoint 2010 as compared to MOSS 2007.
You can configure SharePoint 2010 DR farm using SQL Log shipping or SQL database mirroring for SharePoint databases. Before i start SharePoint 2010 DR farm configuration, I want to give an overview of SQL database mirroring, SQL log shipping and what can be used. In this post i am going explain followings.
Overview to SQL Database Mirroring:
Database mirroring feature is available in SQL 205 and SQL 2008. Its a solution to provide database high availability and its configured per-database basis. You can only configure the database mirroring for the databases that use the full recovery model. You cannot configure the database mirroring for the System Databases (master, msdb, tempdb & model).
In database mirroring there will be 2 copies of a single database residing on 2 different SQL instance. One SQL server instance act as Primary server and holds the active databases. All the clients or applications connect to this database server. Other SQL Server instance act as Secondary server or mirror server which holds the hot or warm databases. Once the database mirroring has been configured and databases are synchronized state, failover can be performed without a loss of data. While you configure the SQL database mirroring you can also configure the Witness server. This is going to another SQL instance which would be monitoring the primary SQL server instance. If primary SQL Service fails then witness server will automatically failover the databases from primary SQL server instance to Secondary SQL server instance.
There are 2 operating modes for configuring Database mirroring:
Lets look at the advantages and disadvantages of database mirroring.
Overview to SQL log Shipping:
SQL log shipping allows to backup the transaction logs from primary SQL Server instance in regular interval to one or multiple secondary SQL Server instance. Transaction log backup are restored to all the Secondary SQL Server instances individually. SQL Log Shipping consist of 3 operations:
Above 3 operation will create 3 jobs on SQL Servers. Backup Job will be only available on Primary SQL Server instance. However, Secondary SQL Server instance contains the Copy job and Restore job. All these job executes in regular interval and you can define the time. SQL agent service has to be on running for log shipping.
What can be used for SharePoint 2010 DR Farm Configuration:
For SharePoint 2010 Disaster Recovery Farm configuration you can use both. However, if you use Database mirroring then databases on Secondary SQL Server or Databases on Secondary Datacenter will be on restoration mode which you cant attach to the web application. I would always recommend to use SQL log shipping for SharePoint 2010 DR Farm configuration. Again, SQL database mirroring is mostly used for HA and SQL log shipping is used for DR. On this post i will be explaining DR farm configuration with both and compare at the end so you can choose what's best for you.
SharePoint 2010 DR Farm Configuration using database mirroring:
To configure the DR Farm using Database mirroring, you need to start a fresh installation of SharePoint 2010 on Secondary Datacenter. You should have below:
To configure Database mirroring using SQL management Studio you can follow the MSDN Article.
ALTER DATABASE ContentDatabaseName SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS
SharePoint 2010 DR Farm Configuration using database log shipping:
To configure the DR Farm using database log shipping, you need to start a fresh installation of SharePoint 2010 on Secondary Datacenter. You should have below:
To configure Database log shipping using SQL management Studio you can follow the MSDN Article.
RESTORE DATABASE contentdbname WITH RECOVERY
Comparison of using SQL database mirroring or Log Shipping for SharePoint DR farm.
Database Log Shipping
Changes required when you failover from Primary SharePoint 2010 to SharePoint 2010 DR Farm.
If you are using SQL database mirroring:
If you are using SQL database log shipping:
After knowing both the options, now you can choose between database mirroring and Database log shipping for DR farm configuration.
Good post but there seems to be a lot of repeated statements listing features of mirroring under log shipping and vice versa…
Agree with Robert. Good post, but quite a few copy -paste statements cause you to re-read multiple times
In this section: Database Log Shipping
You have following contradictory statements:-
•As Database on Secondary SQL Server would be “Stand by/ Read-only” It will allow you to attach the databases to web application on DR farm and we can crawl the content using Search Service Application.
•As we cant attach the databases to the web applications, Search Service Application wont be able to crawl the content. After Fail-over you need to crawl the content.
I think the contradictory statement was a typo or a cut/paste error. you can indeed mount a Log Shipped database in recovery mode/stand by to a SharePoint Farm. just a reminder, SharePoint will know it is read only and it wil trim your options of what you can do in a site colelction when in this mode.
Do you have suggestions on how to deal with User Profiles and MySites in a DR location? I cannto find good documentation on this subject, MS technet is woefully lean on this data.
little confusion Detach the content databases from the web applications ok
and delete the content databases [confusion here] if delete database from DR server and in order to mirroring i have to again create a Database.
for mirroring i have to take back up of database from live server and restore on DR server and then configure mirroring.
is it necessary to delete database from DR site. Can i restore database directly.
irfan, you delete the databases from the DR site because the mirrored database needs to be a restore of the original. Since you are mirroring, you don't need the database that was created when you created the web application.