A Practical Guide to SharePoint 2013

A Practical Guide to SharePoint 2013
A Practical Guide to SharePoint 2013 - Book by Saifullah Shafiq

Sunday, November 20, 2011

Migrating from SharePoint 2007 to SharePoint 2010

There are tons of resources on the Internet today that tell you how to migrate your SharePoint 2007 environment to SharePoint 2010.  Sometimes, achieving something becomes difficult because of lack of information and sometimes it becomes difficult because of abundance of information. The best resources that will help you in achieving your migration goal are Microsoft articles. Here are the links:
You may probably have seen these links before. If you are migrating for the first time, do you know where to start? Which article to read first? Which tips to follow? I am sure you don’t have a clue. Well, I have done in-depth study of these articles and I have migrated applications from 2007 to 2010 several times. Below you will find steps given in a very simplistic way that you can use to migrate your environment to 2010. I am not saying that this is the only method. If you go through the above documents you will see that there are different approaches that you can take. This is just one of them but I have tested it several times and I have successfully migrated the 2007 applications to 2010.
Please note again that this is same content that you will find in the above links but I have just re-ordered it and put it in one place for your convenience.
So, the approach that I am going to use is “Attach database” approach.
1.       Back up SharePoint database in SQL Server 2005. Repeat this step to back up all the content and shared services databases that are used by Office SharePoint Server 2007 in your environment.
For complete steps, see following article:
2.       Restore the databases you backed up in the previous step in SQL Server 2008 Enterprise
3.       Now that you have restored the SharePoint 2007 database in SQL Server 2008. Next step is to create a web application. Remember, for each web application that existed in the original 2007 environment, you have to create a corresponding web application in 2010.

a.       Go to Central Admin site. Make sure “Application Management” is selected under “Central Administration” and then click “New” button.

Figure 1: Create new web application
Use the same URL and configure any alternate-access mapping settings. Remember, you cannot use same URL twice, that is, in two different locations. So, for now you will have to use a new URL but after you have migrated everything, make sure the old URL points to the new application. For example, if your current application uses a URL “http://myapp.mysharepoint.com”, you cannot use this URL again while creating a new web application. Use a new name and after migration, point the old URL to the new application. This is very important because many links in the upgraded site will not work if you forgot to change the URL. Content database has old URLs and those are not updated during the upgrade. To reuse old URL, disassociate it with the application. Also, to use a descriptive host header you need to make a DNS entry. If you don’t know how to do it, ask your network administrator to help you out.
b.      Use same authentication method as before
c.       Re-create included paths (such as /Sites)
d.      Enable self-service site creation for any web application that used it in the previous environment.

4.       Re-apply customizations. One frequent cause of failures during upgrade is that the environment is missing customized features, solutions, or other elements. Make sure that any custom elements you have to have are installed on your front-end web servers before you begin the upgrade process. Use pre-upgrade checker tool to compile a list of server-side customizations in your environment. For more information, see section “Identify and install customizations “ in the article “Use a trial upgrade to find potential issues”.
In this step, you  manually transfer all customization into your new farm. Make sure to install any components that your sites depend on to work correctly, including the following:
  • Custom site definitions
  • Custom style sheets, including cascading style sheets, and images
  • Custom Web Parts
  • Custom Web services
  • Custom features and solutions
  • Custom assemblies
  • Web.config changes (such as security)
 Ensure that you transfer any unique settings from the Web.config files for each Web application to the new servers.

5.     Verify custom components. Before you attach the content databases to the Web applications, use the Test-SPContentDatabase Windows PowerShell cmdlet to verify that you have all the custom components that you need for that database. For detailed steps, see this article.

6.     Attach a content database to a web application. Now this is an important step. When you attach a content database, make sure that the root site for the Web application is included in the first content database that you attach. In other words, before you continue, examine the root of the Web application in the original server farm to determine the first site collection. After you attach the database that contains the root site, you can attach the other content databases for the Web application in any order. You do not have to create any site collections to store the content before you attach the database; this process creates the site collections for you. Make sure that you do not add any new site collections until you have restored all the content databases.

See this link for detailed steps. This link contains all the remaining steps that you need to take to complete the upgrade process. I know what you are thinking that why instead of giving you the direct link I gave you this post. Well, as I said, beginners usually get distracted by seeing so much information. They get confused and struggle to find a starting point. Now you have one place to start your upgrade process. I have added my comments where necessary and with each step given above, I have given you the original link so that you can refer to it and complete your step.

Please feel free If you think I have missed something and would like it to be added.