Sign In

Upgrade Site Collection from MOSS 2007 to SharePoint 2010

William Khodak Senior SharePoint Consultant
May 01, 2010

In order to understand and make the upgrading process smooth, please refer to this SharePoint Server 2010 link, especially the checklist at the bottom of the page. In addition to this information I’d like to describe the problems that I encountered during this process.

The upgrade process recommended by Microsoft, is by attaching the content database to the existing web application; in my case, my content db had more than one site collection and I needed to upgrade only one. I had to move this site collection to a separate content database. The mergecontentdbs of stsadm commands deals with this process as follows:

  • Store the site collection list into xml file
  • stsadm -o enumsites -url http://[server_name] -databasename [contentdb_name] > splitSites.xml

  • Open the splitSites.xml file for editing
    • On the root element “Sites” set the “Count” value to 1
    • Remove all “Site” elements except one that associates with the site collection for upgrade, and save the file
  • If the destination database is not present, it must be created via the Central Admin site
    • On the Central Administration site, browse to Application Management and click Content databases link under SharePoint Web Application Management section. On this screen, click on “Add a content database” link to create a new content database. (Leave the settings at their default)

  • Merge the databases
  • stsadm -o mergecontentdbs -url http://[server_name] -sourcedatabasename [sourcedb_name] - destinationdatabasename [destinationdb_name] -operation 3 -filename splitSites.xml

  • Perform an iisreset once the operation completes successfully

Now, I can start with the upgrading, by attaching the content database to the existing web application. There are a couple of facts I have to point out:

  • On the SharePoint 2010 side you have to be a Farm Administrator to perform the action
  • If you add a content db through stsadm command, always open the command prompt as administrator (“Run as administrator”)
  • In SQL server make sure that you are a db_owner on both: the new content database and configuration data base. Otherwise, you will get an “Access Denied” message when executing the stsadm commands

WebKMS Consultants Diary

On this Consultants Diary column, we share some of the problems we faced and how we solved for the benefit of our readers. We hope you find this real-world solutions useful and appreciate your interest and valuable feedback.

We update this column frequently, and encourage you to come back as often as you can.

We would also be glad to welcome if you have any specific request and we will try our best to post a solution on this column.

Doc collaboration Enterprise Intranet