Monday, 5 November 2012

Migrate a MOSS 2007 Site to SharePoint 2010 Using Database Attach Detach Method

Migrate a MOSS 2007 Site to SharePoint 2010 Using Database Attach Detach Method

In this article, I'll explain you how to migrate a site to SharePoint 2010 using the database attach detach method.

How can I migrate just the site/site collection I want from MOSS 2007 to SharePoint 2010?
Moving the entire farm to SharePoint 2010 could take a lot of time, bordering on seeming like forever. Sometimes, however, we just want to get the contents of a specific site/site collection up and running on the new platform as soon as possible.
Using the database attach method, we can migrate a site/site collection to SharePoint 2010 following these basic steps:
Step 1: Move the needed site to a new Web application.
Step 2: Copy the content database backup to the SharePoint 2010 SQL server.
Step 3: Mount that content database to the SharePoint 2010 server.
Notes before migrating
  • Always backup your content database just to be on the safe side.
  • The MOSS 2007 server must have SharePoint Service Pack 2 installed.
  • Run the upgrade check program on your MOSS 2007 server,
stsadm -o preupgradecheck
  • Fix any issues reported before moving on to the next step.

Step 1: Move the site to a new web application in MOSS 2007
Let's say we want to migrate the SharePoint site at http://demosite/TeamSite.
  1. First, create a new Web application and blank site collection (for example: http://demosite:1111).
  2. Login to the SharePoint server using an account that has the following rights/permissions:
    • SharePoint Farm Admin.
    • Local Administration rights on the Web server.
    • db_owner permission on the content databases.
    • Make sure the access account has access to the site content (sometimes farm admin might not be a site collection admin).
  3. Open Command Prompt and change directory to %COMMONPROGRAMFILES%\Microsoft shared\web server extensions\12\bin, then run the following STSADM commands:
 stsadm -o export -url <URL name> -filename <export file name> -includeusersecurity

stsadm -o import -filename <import file name> -url <URL name> -includeusersecurity


The imported Web application might look like this:         

Step 2: Copy the content database backup to the SharePoint 2010 SQL server
  1. Open Microsoft SQL Server Management Studio. Right-click on the content database and select Tasks > Backup...\
  2. Enter the Backup Name, select Destination, and click OK to start.
  3. Copy this backup file to the SharePoint 2010 SQL server.

Step 3: Mount the content database to the SharePoint 2010 server
  1. On the SharePoint 2010 server, create a new empty Web application. For example: http://demosite2010:1111.
  2. If you have any custom components on the original site, install them to this Web application now.
  3. After that, we can restore the MOSS 2007 backup to SharePoint 2010 SQL Server. Open Microsoft SQL Server Management Studio. Right-click on Databases and select Restore Database...

  1. Enter the new database name, making sure that you don't overwrite the original content database. Select the Source and click OK to start.

  1. Open SharePoint 2010 Management Shell and dismount the current SP2010 content database.Dismount-SPContentDatabase <ContentdBName>
  1. Verify that we have all the needed custom components. If there are any errors, make sure you correct them before mounting the SP2007 content database.Test-SPContentDatabase -Name <DatabaseName> -WebApplication <URL>
  2. My test shows no error, so we are ready to run the Mount-SPContentDatabase cmdlet. This cmdlet also upgrades the SP2007 content to SP2010.Mount-SPContentDatabase <ContentDb> -WebApplication http://SiteName
  3. After this process has completed, you need to review the log files (the upgraded log file and error log file) to make sure there are no errors. The log files are located at %COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\14\LOGS. The logs are named in the following format: Upgrade-YYYYMMDD-HHMMSS-SSS-error.log and Upgrade-YYYYMMDD-HHMMSS-SSS.log, where YYYYMMDD is the date and HHMMSS-SSS is the time (hours in 24-hour clock format, minutes, seconds, and milliseconds). If there are errors at this time, they will most likely be due to some customization done on the MOSS 2007 server.

We have finally finished the migration process. Notice that after our upgrade is completed, the new site looks exactly like it was in MOSS 2007. In SharePoint 2010, there is a feature called Visual Upgrade that gives you an option to switch between MOSS 2007 look and feel or the SharePoint 2010 view.  Note that if you have customized themes on the old site, you must re-create the new theme on the new site before you can switch.  To switch over to the new SharePoint 2010 look, do this:          
  • Login as Site Owner and select Site Actions > Visual Upgrade.

  • Select Update the user interface. Click OK.

 Here is the SharePoint 2010 look and feel:


  • The database attach method works with both SharePoint 2010 Foundation and Server.
  • Limitations of the export/import method are:
    • You cannot save a workflow, alerts, features, solutions, or Recycle-Bin state by using the export operation.
    • Stsadm only supports moving entire Web sites (SPWeb instances). You are not able to export selected items or lists.
    • You cannot retain object globally unique identifiers (GUIDs) when you migrate site objects. New identifiers are added at the migration target.
    • You can experience problems if you rerun Stsadm on site content that has already been imported. If that occurs, all list items that are not document libraries are duplicated on the target site.
    • Other minor limitations are imposed by operation parameters. For example, although the migration object model provides about 25 export/import parameters, the equivalent operations in Stsadm provide only about 10. And in some cases parameters provided in Stsadm are somewhat limited. For example, when applying security settings, Stsadm offers only two options: "no security" or "all security." You should become thoroughly familiar with the Stsadm operations and their parameters before using it for content migration

No comments:

Post a Comment