Most important part of performing the upgrade or migration from SharePoint 2010 to SharePoint 2013 is to plan on how and when to perform the actual database upgrade after you have setup the fresh SharePoint 2013 Environment. In this post I will be covering the steps that you should be performing during the change window for the migration.
Plan to perform these migration phase wise. If you have very large content and you foresee that you can’t upgrade all of the Web Applications on a weekend, then plan to upgrade 1 Web application per weekend and perform the cutover to end users for every weekend. Subsequently you need to plan for making your search available for the moved content for your other web applications that live in the old farm until the phased migration is complete.
You can first setup the search in SharePoint 2013 environment and then connect your old SharePoint 2010 farm to the search service application and then start the phased migration.
During Upgrade (Follow the below Upgrade Order)
- Plan to perform the upgrade on a long weekend considering the actual time to implement, Validation time and the backout time required to roll back in case of a failure.
- The plan should be based on the time identified during your test upgrade
- Follow the below order of upgrade
1. Perform Services Upgrade First (http://technet.microsoft.com/EN-US/library/jj839719.aspx)
- Disable the Web Analytics Service Application in the SharePoint 2010 farm
- Backup the databases related to the service application in SharePoint 2010.
- Ensure that all service application pools are created in the target farm
- Create the relevant service application and proxy in the target farm
- Upgrade the relevant service applications by attaching the database and upgrading it based on the information provided in the TechNet Article
- Start service instances only after your service is created with upgraded database.
2. Configure Web Application
Connect the service instances by connecting to the proxy groups(Some content databases upgrade may use service instances)
3. Upgrading Content Database:
Before performing a content database upgrade
a. Disable "Workflow Auto Clean Up" timer job to preserve associations and running instances of workflows. After disabling leave an hour time for the running job to complete.
b. Make the database in Read-Only mode.
c. Perform a Copy only Backup and Move the a backup to the new SQL Server 2012
d. Before upgrading make sure you have not set the database in Read-Only mode in the new SQL Server 2012
Use the Core Commands required for Upgrade (To be done for all content databases)
a. Test-SPContentDatabase (Replacement for Stsadm -PreUpgradeCheck)-
1. Can be performed on a live database during off-peak hours.
2. To find issues, Orphans, Missing features, missing templates/site definitions, missing webparts
3. Site Collection in content database but not in config database sitemap or vice versa
4. Use -ShowRowCounts switch to find out database row size. Helps to find the time required to complete the upgrade.
Attaches content database to a farm and starts upgrading the database. If the upgrade fails, the Upgrade-SpContentDatabase can be used to restart the upgrade process after fixing the issues that caused the failure.
1. Used mainly for Build to Build upgrade of content database.
2. For version to version upgrade this can be used to restart the upgrade when there is failure in the upgrade process after executing the Mount-SpContentdatabase.
3. Can be run parallel on different content databases
Perform the Content Database upgrade in parallel using the Mount-SpContentDatabase Command
a. Move the mdf, ldf, ndf files from the old SQL Server to the new SQL Server 2012.
b. Add the databases to the database instance using powershell or SQL Management Studio
c. Use Mount-SpContentDatabase command to attach and Upgrade the database
d. If you encounter failures, review the upgrade log and correct the issues. Once corrected you can use the Upgrade-SpContentDatabase command to re-start the upgrade process.
4. Validate the Upgrade Process - http://technet.microsoft.com/en-us/library/cc424972.aspx
- Review Upgrade Status Page in Central Administration for Errors and Warnings
- Review Upgrade error log files available in %COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\15\LOGS
- Review Correlation errors in ULS logs during the upgrade period
- Review Application Event Logs for possible Errors or Warnings.
a. Application Event logs are sources of finding service account login failures
b. Domain Connectivity Failures
c. Custom Solution Provisioning errors
d. External Service connection failures
c. Server incompatibility between other SharePoint servers due to patch levels of the software’s installed
- First Solve issues that are authentication errors, assembly load errors, process crashes as that would have high impact on the functionalities
- Solve issues related to missing server file dependencies and customizations
- Solve issues related to content
- Identify and test sites based on criteria’s like Business critical sites, heavily customized sites, Sites that use Third Party solutions, Specialized site collections (i.e.. Content Type Hub, MySite Host) and Sites that use external connections via BCS, Office Data Connection Files for data.
- Validate if all the site features exist and sites created on custom site definitions work
- Basic Testing should include creating of Web Applications, Site Collection for SharePoint 2010 Mode and SharePoint 2013 Mode, SubSites based on Site Definitions, Feature activation on both SharePoint 2010 Mode and SharePoint 2013 Mode, Add Web Parts in both modes, Add Pages in both modes, Create Libraries/Lists/Content Types in both modes, Create Workflows in 14 mode, e.t.c….
- Try logging in with different authentication providers for your site collections.
- Validate User Lookup works in Central admin and any Web application
- Ensure that all the Service accounts and App Pool accounts are member of the SPDataAccess Role Account
Finally the Migration is complete and you will have all your web applications in the SharePoint 2013 Environment. There would be no change in the way the UI behaves as your web applications run in SharePoint 2010 mode in the SharePoint 2013 environment. But still you have few more activities to be performed to utilize the full power the new SharePoint 2013 which I will be covering in my next article.