Thursday, January 20, 2011

Upgrade and Migration for SharePoint Foundation 2010




 
 
 
1.1 Introduction


Microsoft SharePoint Foundation 2010 has been designed for scale and performance and as such requires new hardware and software requirements. There are 3 major steps while upgrading.

1. Plan and Prepare
2. Perform a database attach upgrade
3. Verify upgrade


1.2 Plan and Prepare

 
Before we run any process to upgrade from Windows SharePoint Services 3.0 to Microsoft SharePoint Foundation 2010, we have to determine which upgrade approach to take. In our scenario, Database Attach Upgrade seems to be appropriate approach to follow.

We can upgrade the content for the environment on a separate farm. The result is that you do not upgrade any of the services or farm settings. You can upgrade the databases in any order and upgrade several databases at the same time. While each database is being upgraded, the content in that database is not available to users.


1.2.1 Upgrade Approach


A database attach upgrade enables you to move to new hardware or a new farm. During a database attach upgrade, you detach all the content databases from an existing farm and then attach the databases to a new server farm installation. When you attach the databases to the new server farm, the upgrade process runs and upgrades the data in place.



The following steps explain what happens during a database attach upgrade:


1. The server administrator sets up and configures a new SharePoint Foundation 2010 farm. The administrator transfers all customizations to the new farm and tests the environment.
For more information about how to configure the new environment, see Prepare the new SharePoint Foundation 2010 environment for a database attach upgrade.


2. The server administrator detaches the content databases from the old Windows SharePoint Services 3.0 farm and takes the old farm offline (for example, by changing the load balancer or IIS Web applications to stop service requests, or by turning off all the components and services on each server computer in the farm).


3. The server administrator attaches the content databases to the new farm and upgrades the content.



4. The server administrator confirms that the upgrade has finished successfully and then configures the new farm to start serving requests at the new URL.


1.2.2 Run Pre Upgrade Checker


Pre-upgrade checker reports on the status of the environment and SharePoint sites before one upgrades to Microsoft SharePoint Foundation 2010. It is highly recommended that the server administrator run the pre-upgrade checker and resolve as many problems as possible before scheduling the upgrade.

The pre-upgrade checker is an stsadm operation that one can run in a Windows SharePoint Services 3.0 environment to find any potential issues for upgrade and to review recommendations and best practices.

1.3 Perform a database attach upgrade


When we upgrade from Windows SharePoint Services 3.0 to Microsoft SharePoint Foundation 2010 by using the database attach upgrade approach, we upgrade only the content for your environment and not the configuration settings. Using a database attach upgrade approach is useful when you are changing hardware or want to reconfigure your server farm topology as part of the upgrade process.

1.3.1 Back up the previous version databases by using SQL Server tools

Follow the appropriate procedure to back up databases in SQL Server 2005. Repeat these steps for each content database in the server farm.

We do not have to back up the configuration or admin content databases, because we will re-create these databases in the new server farm.


At the end of this procedure, you will have created duplicates of the read-only content databases.


To back up a database in SQL Server 2005


1. On the database server, click Start, point to All Programs, point to Microsoft SQL Server 2005, and then click SQL Server Management Studio.
2. In the Connect to Server box, fill in the connection information, and then click Connect.
3. After you connect to the appropriate instance of the SQL Server 2005 Database Engine, in Object Explorer, expand the server tree by expanding the server name.
4. Expand Databases, right-click the database that you want to back up, point to Tasks, and then click Back Up. The Back Up Database dialog box appears.
5. In the Source area, in the Database box, verify the database name.
6. In the Backup type box, select Full.
7. Under Backup component, select Database.
8. In the Backup set area, in the Name text box, either accept the default backup set name that is suggested or type a different name for the backup set.
9. In the Destination area, specify the type of backup destination by selecting Disk or Tape, and then specify a destination. To create a different destination, click Add.
10. Click OK to start the backup process.


Repeat the previous procedure to back up all the other content databases that are used by Windows SharePoint Services 3.0 in the environment.


1.3.2 Detach the previous version databases (standard database attach)


Before we can attach databases to the new environment and upgrade the data, we need to detach them from the current environment. After we have detached the databases, we can move them to a new database server or leave them on the existing database server and attach them to the Web applications.


To detach a content database from a Web application


1. In Central Administration, on the Application Management page, in the SharePoint Web Application Management section, click Content databases.
2. On the Manage Content Databases page, click the content database you want to detach.
3. On the Manage Content Database Settings page, in the Remove Content Database section, select the Remove content database check box, and then click OK.
4. Repeat steps 2 and 3 for each content database that you want to detach.

If we are moving the databases to a different database server, we must also detach the databases from the instance of SQL Server before we move them and attach them to the new instance of SQL Server after you move them.


To detach a database from an instance of SQL Server and move it to another instance of SQL Server

1. In SQL Server 2005 Management Studio, open the source instance of SQL Server, and then expand the Databases node.
2. Right-click the content database, point to Tasks, and then click Detach. Repeat this step for each content database that you want to detach and move.
3. In Windows Explorer, browse to the location of the .mdf and .ldf files for the content databases.
4. Select the .mdf and .ldf files for the database you want to move and either copy or move them to the destination directory.
5. In SQL Server 2005 Management Studio, open the source instance of SQL Server.
6. Right-click the Databases node, point to Tasks, and then click Attach.
7. In the Attach Database dialog box, browse to the location to which you transferred the .mdf and .ldf files, select the .mdf file for the database you want to attach, and then click OK.
8. Repeat steps 6 and 7 for each content database that you are moving.

1.3.3 Restore a backup copy of the database (database attach with read-only databases)


After we configure the new server farm, we can restore the backup copies of the databases on one of the following: Microsoft SQL Server 2008 R2, SQL Server 2008 with Service Pack 1 (SP1) and Cumulative Update 2, and SQL Server 2005 with SP3 and Cumulative Update 3. Note that we must restore to a 64-bit version of SQL Server 2008 R2, SQL Server 2008 with SP1 and Cumulative Update 2, and SQL Server 2005 with SP3 and Cumulative Update 3. Start with one database, and then verify that the restoration has worked before we restore the other databases.


The following section provides procedures for restoring the backups.


To restore a backup copy of a database in SQL Server 2008 Enterprise


1. After you connect to the appropriate instance of the SQL Server 2008 Database Engine, in Object Explorer, expand the server name.
2. Right-click Databases, and then click Restore Database. The Restore Database dialog box appears.
3. In the Restore Database dialog box, on the General page, type the name of the database to be restored in the To database list.
4. In the To a point in time text box, retain the default (Most recent possible).
5. To specify the source and location of the backup sets to restore, click From device, and then click Browse to select the backup file.
6. In the Specify Backup dialog box, in the Backup media box, be sure that File is selected.
7. In the Backup location area, click Add.
8. In the Locate Backup File dialog box, select the file that you want to restore, click OK, and then, in the Specify Backup dialog box, click OK.
9. In the Restore Database dialog box, under Select the backup sets to restore grid, select the Restore check box next to the most recent full backup.
10. In the Restore Database dialog box, on the Options page, under Restore options, select the Overwrite the existing database check box.
11. Click OK to start the restore process.



1.3.4 Verify custom components


Before we attach the content databases to the Web applications, use the Test-SPContentDatabaseWindows PowerShell cmdlet to verify that we have all the custom components that we need for that database.

To verify custom components are available by using Windows PowerShell

1. Verify that you meet the following minimum requirements: See Add-SPShellAdmin.
2. On the Start menu, click All Programs.
3. Click Microsoft SharePoint 2010 Products.
4. Click SharePoint 2010 Management Shell.
5. At the Windows PowerShell command prompt, type the following command:

Test-SPContentDatabase -Name -WebApplication
Where:


is the name of the database we want to test.


is the URL for the Web application that will host the sites.

1.3.5 Attach a content database to a Web application


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


We can use either the Mount-SPContentDatabase cmdlet in Windows PowerShell or the addcontentdb Stsadm command to attach a content database to a Web application. Using the SharePoint Central Administration pages to attach a content database is not supported for upgrading.


Ensure that the account we use to attach the databases is a member of the db_owner fixed database role for the content databases that we want to upgrade.


To attach a content database to a Web application by using Windows PowerShell


1. Verify that you meet the following minimum requirements: See Add-SPShellAdmin.
2. On the Start menu, click All Programs.
3. Click Microsoft SharePoint 2010 Products.
4. Click SharePoint 2010 Management Shell.
5. At the Windows PowerShell command prompt, type the following command:


Mount-SPContentDatabase -Name -DatabaseServer -WebApplication [-Updateuserexperience]
Where:
is the name of the database we want to upgrade.
is server on which the database is stored.
is the URL for the Web application that will host the sites.

Updateuserexperience is the choice to update to the new user experience or stay in the old user experience (part of Visual Upgrade). When we include this parameter, the site is set to preview the new user experience. Omit this parameter if we want the site to remain in the old user experience after upgrade.



1.4 Verify upgrade



After we have performed database attach upgrade to Microsoft SharePoint Foundation 2010, we must verify that the content was successfully upgraded to the new version. We can verify the status of the upgrade (is it still in progress, or has it been completed successfully or with errors or failures?) and then also review the upgraded sites to see whether any issues remain for us to address. When we upgrade the production environment, it is even more critical that we know when the upgrade was completed, which sites have been upgraded successfully, and which sites require additional work before we allow users access to them again.

1.4.1 Verify upgrade status


There are different ways to check the status of the upgrade process during each of these phases: In SharePoint Central Administration, we can view the version number to make sure that it is correct for the version that we upgraded to. Also, we can use the Upgrade Status page in SharePoint Central Administration or the localupgradestatus operation in Stsadm to find out which sites have been — or are currently being — upgraded. If upgrade was not successfully completed, we can view the log files to find the issues, address them, and then restart the upgrade process.

1.4.2 Review Upgraded Sites


To verify basic functionality, we can create a new site collection by using a representative set of lists, libraries, Web Parts, and so on. Review the new site to make sure that the common, basic elements of the sites are working.


If pages are not rendered, we can check the Site Settings page by going directly to the URL (http:// siteurl/_layouts/settings.aspx). If the Site Settings page works and the upgrade has succeeded, there might be issues with the master page or home page. If the Site Settings page does not work, go to the log file to see whether you can get more information about the problem.


Use the following checklists to review your upgraded sites and look for issues.


1. Web Parts


2. Large lists


3. Styles and appearance


4. Permissions


5. Customized (unghosted) pages





-Vighnesh Bendre

4 comments:

Anonymous said...

Are you able to migrate sp2007 fab 40 sites (HelpDesk, ITWorkspace etc.) to SP2010? If yes please send details to me (hemant dot risbud at yec dot yk dot ca - Please dont send spam, replace dot and at, no spaces) how you have achieved it?

Vighnesh said...

Hi Hemant, I have not tried to migrate MOSS fab 40 templates. I think it is better you follow the fab 40 templates for SP 2010. They are available now. All the best...

Gangadhar Kotu said...

Fab 40 templates upgrade is not straight forward as they built on WSS 3.0. Microsoft suggests that install them on to SharePoint 2007 and save as site templates to get .wsp files. (otherwise package from Microsoft contains .stp files as well and is not supported in SharePoint 2010).

Once you have .wsp, then you can install on to SharePoint 2010 server.

Otherwise, you can use Converted fab-40 templates

Ekta Rani said...

Hi Vignesh, I like your post. Really it is very helpful for me since i am new in Sharepoint.

Thanks
Ekta Rani