Thursday, July 4, 2013

sharepoint split content database

This is one of the requirement you will get when you work with large scale environments.

Split of content databases between site collection.

Here are the steps to perform this operation :


1.       Create a new content database in web application. Content database should be mapped to web application.

2.       Make sure executer should have full control on both the content databases.

3.       Perform enum command to get all the sites collections in the web application
Stsadm.exe –o enumsites –url “{web app url } > “Local path to save the output in xml format”

4.       The above command will get all the site collections in the web application.

5.       Remove all the site collection url from the xml files except that you want to move Content database. All the entries should have only one source database names.

6.       Limitation of entries in xml file is 1000

7.       Perform IISRESET

8.       Per form PrepareToMove command to make the sync in profiles before you do the actual split
stsadm -o preparetomove -contentDB SQLServer01:ContentDB name

9.       Now you can perform the analyzing of split databases operation with the following command.
Stsadm -o mergecontentdbs –url {web app url} –sourcedatabasename {Source DB name } -destinationdatabasename {Destination DB name } –operation 1 –filename C:\MySiteURLs1.xml

10.   The above command will give you the estimation of the split operation if any errors or warnings will be listed there.

11.   After that you can perform the actual split operation with the command given.

1     Stsadm -o mergecontentdbs –url {web app url} –sourcedatabasename {Source DB name } -destinationdatabasename {Destination DB name } –operation 3 –filename C:\MySiteURLs1.xml



Observations / Limitations:

1.       Action performer must have full control on both the databases and he must have farm admin, local administrator and site collection administration rights to perform this operation.

2.       This operation cannot be performed more than 1000 sites in single shot.

3.       IIS must be restarted before and after the operation.

4.       Site collection might not be accessible until the operation completes.

5.       Both the content databases must be in same SQL instance and must be attached to same web application.

6.       As per MSDN this operation might through errors if the site collection size is more than 10 GB

7.       Action performer account must have db_owner permissions in SQL Server.

8.       Search crawl, Profile crawl must stop before performing this operation.

Known errors/issues:

1.       Ensure that data is synchronized between the profiles feature and the sites in the databases

2.       Navigation may fail some times ( Global navigation , left navigation )

3.       Always back up the source and target databases before you use the STSADM MergeContentDBs command

4.       Run the STSADM MergeContentDBs command during off-peak hours because the STSADM MergeContentDBs command places significant additional load on the server that is running SQL Server.

5.       Some articles were confirming that this command may result in data loss. Please find the reference link below :

6.       Audit logs might be created at server end with huge in disk size occupation. Please find the reference below :


1 comment:

  1. Hi, of course this post is genuinely fastidious and I have learned lot of things from it about Sharepoint. If any one wants to be a successful blogger, after that he must read this paragraph. I'm very glad to read this post.

    Top Quality Healthcare Website Design Company in the World.

    ReplyDelete