SharePoint Pals
 | Sign In
Activities to be performed before Upgrade/ Migrate from SharePoint 2010 to SharePoint 2013
by Senthil Kumaresan 13 Jan 2014
SharePoint Architect
Today  :   2     Total  :    25753

There are lot of activities to be performed before starting the actual migration. In this post I have covered the most important activities to be completed before the time you are planning to perform the actual database upgrade of SharePoint 2010 to SharePoint 2013

Sl.No Property
1 Planning for Upgrading from SharePoint 2010 to SharePoint 2013
2 Preparing for Migration from SharePoint 2010 to SharePoint 2013
3 Activities to be performed before Upgrade (This Article)
4 Steps to be performed during Upgrade
5 Post Upgrade steps for migration from SharePoint 2010 to SharePoint 2013
6 Concluding migration from SharePoint 2010 to SharePoint 2013


  1. Target servers should not have any other version of SharePoint
  2. Mandatorily apply SP1 or above for the SharePoint 2010 Environment or else Remote BLOB and Workflows might encounter issues after the upgrade.
  3. Make sure you have the required hardware and software setup.(
  4. Make sure you have all the language packs installed and up to date.

Test and Clean SharePoint 2010 environment (

1. Perform Upgrade Check

  • Test-SPContentDatabase - To identify upgrade issues in the 2010 environment use 2013 version of Test-SPContentDatabase on 2010 content database. Use the tool available in the link to review the issues which is very helpful(
    • Run the above test-spcontentdatbase command on content databases during off-peak load time on the database as it might impact your live environment slightly.
    • Issues with content can be identified using the command
    • Windows account to claims conversion issues.
    • Large Lists that would affect the upgrade process.
    • Incorrect authentication providers
    • Various configuration issues in the Web Application settings
    • Orphaned Sites
    • Missing Site Definitions, Customization's and Features.

2. Features:

  • Web Analytics related features should be removed from the Site collections if they are present in the Site Collection. Web Analytics works along with Search in SP2013
  • Features related to Office Web Apps like PowerPoint broadcast site will not work in 2013. So those should be removed before the upgrade.
    • To Remove PowerPoint BroadCast Sites (Get-SpSite|Where-Object{$_.RootWeb.Template -eq "Powerpoint Broadcast#0"}|Remove-SpSite). This Site Definition will be available if you have installed Office Web Access in your 2010 environment.

3. Authentication:

  • Migrate Web Application to Windows Claims if you have used Classic Authentication because in SharePoint 2013, Claims is the only authentication method. ( Verify all external data sources work as expected after migrating to the claims environment
  • Forms Authentication works without issues if you have the same name for the membership and role providers that you have set for the web application

4. Clean Up:

  • Delete Stale sites. Sites that are no longer used. Power shell script can be used to identify the older sites based on the last modified date property of the site to find out whether it is stale or not.
  • Upgrade 2007 UI based Site Collections that run on 2010 environment to 2010 mode by Visual upgrade(Get-SpSite|foreach-object{$_.VisualUpgradeWebs()})
  • Repair Data Issues
    • Perform Orphan Clean Up on all content databases using - stsadm -o databaserepair - deletecorruption
    • List delete that are corrupt - stsadm -o forcedeletelist
    • Cleanup variations - stsadm -o variationsfixuptool

5. Perform Visual Upgrade of old SharePoint Sites in the SharePoint 2010 farm:

Perform a Visual Upgrade for all the upgraded SharePoint 2007 sites. These will not work if you have not done visual upgrade for older sites. This is usually done when you might have upgraded from SharePoint 2007 to SharePoint 2010 using Get-SPSite | ForEach-Object {$VisualUpgradeWebs()}.

6. Document the below Farm Information required for Manual implementation:

Use the below Upgrade Worksheet from Microsoft to record the important information that will be required to done manually in the new SharePoint 2013 servers

( - Upgrade Worksheet from MS

  • Gather Service Application Settings
  • Export MIIS Encryption key for User Profile Service Application. Can be done in Central Admin
  • Record Passphrase of the Secure Store Service Application
  • Use PowerShell to enumerate to find the Web Application, Site Collection and Content database and record them to validate after the upgrade
  • Custom Full Trust(GAC) and Partial Trust Solutions(BIN) to be deployed in the new environment
  • Export Admin Deployed InfoPath Form templates and Data Connection files (UDCX)- Export-SPINfoPathAdministrationFiles - Exports to a CAB file
  • Export Excel Services Trusted Data Connection files.
  • MSI Deployed Third Party Components - Contact Vendor and get the latest solution for the SP2013
  • Files that are deployed using XCopy or manually copied into file systems. Consider a moderate effort to be spent in packaging the files into WSP packages.
  • Content Databases- That has issues with Orphans and Referenced Customizations
  • Farm Web App- Alternate Access Mappings, Authentication Providers, Managed Paths, Installed/Registered features, Installed customizations and Web.Config changes.
  • Cross Farm Topology , Search Topology, Logical Topology and Farm Topology
  • Use Windiff tool from MS to document the below items
    • To Check the Web Server Extensions folder/directory structure in the SharePoint server. Perform it for all App, WFE Servers
    • GAC Assemblies in all the APP/WFE Servers
    • IIS Web Site Directories on all APP/WFE Servers
    • Patch Levels of Windows, IIS, SQLserver and SharePoint
    • Take a backup of all the above data which would useful to fix if there are issues after the upgrade

7. Re-organize content to reduce the risk of upgrade failure for content database

If there is more than one site collection per Content Databases and if they are more than 100 GB then it try to divide into multiple content databases by moving Site Collection.

Prepare the new SharePoint 2013 environment

  1. Build SharePoint 2013 farm based on redesigned topology or as-is topology. Deploy and Activate required features and Services on servers in the farm
  2. Configure Farm Settings like Blocked File Types, Usage and Health data collection settings, Diagnostic logging e.t.c.. as per your old environment or as per your new farm design.
  3. Create Service Applications and Proxies in the farm as per your farm topology and use the same settings that you had in the SharePoint 2010 farm.
  4. Import the MIIS Encryption key that was exported from the SharePoint 2010 UPS and the start the User Profile Synchronization Service
  5. Secure Store Service – Restore the Passphrase which you used in the SharePoint 2010 environment.
  6. Create Web Applications with similar SharePoint 2010 Setup.
  7. Create the required User Policies, IIS Bindings, Authentication providers, AAM Settings, Managed Paths and Web.Config changes, Quota templates, Email settings and Certificates and all Web Application level settings
  8. Connect the Web application to the service application proxy groups.
  9. Install Third Party Components, Customization's, Farm Solutions and Partial trust Solutions
  10. Deploy required features and installers
  11. Deploy or Install all required Full Trust or Partial Trust Solutions in all the WFE/APP Servers.
  12. Configure Office Web Apps server
  13. Configure Azure Bases services that would require for your new SharePoint 2013 environment (i.e.. Workflow Manager, Access Control Services E.t.c..)
  14. Make sure you have adequate space for your transaction log files as this might grow during the upgrade process.
  15. Setup Http to Https redirection modules so that if you have any http based embedded links in office docs or bookmarks of users will continue to work

Preparing for Upgrading Customization's:

1. Custom Site Definitions

  • Upgrade definitions files and Update Onet.xml file
  • Turn existing list instances into feature based list instance

2. Customization Security Changes

  • No partial trust code solutions (Solutions that are deployed in Bin Directory) need to validate such solutions and update the CAS Policies in the web.config

3. Customization Deployments

  • Install 2013 solutions first and then deploy 2010 solutions. Make sure you activate 14 mode features first and then activate 15 mode features
  • Update references to _controltemplates and _Layouts folder to point to new 15 hive directory in the custom solutions
  • If you plan to support both 2010 and 2013 mode in your farm , then deploy farm solutions to 14 hive and 15 hive folders . In the below command the –CompatibilityLevel parameter decides on which folder to deploy

Install-SPSolution -Identity contoso_solution.wsp -GACDeployment -CompatibilityLevel All

4. Search Customizations:

  • Custom solutions that use FullTextSQLQuery will not work and needs to be modified to use with FastQueryLanguage (FQL) or KeywordQueryLanguage (KQL)

Setup Account Requirements for performing the upgrade:

  • Active SqlServer Login on the SQL Server
  • Account must be member of DB_owner group of the database
  • Account must be a member of WSS_Admin_WPG group in the Config database
  • Account must be member of farm admin group
  • Account must be part of local admins group on the server

That concludes the 3rd part of the series. Building customizations is the important aspect of the preparation and should be well planned. Identify the time required to build the customizations. Try to automate the preparation tasks using PowerShell and it would be a gold source for your environment. Keep updating it using tools like System Center configuration manager.

blog comments powered by Disqus

SharePoint Pals

SharePoint Pals, a community portal for SharePoint developers, Administrators and End Users. Let's join hands and share the point together.
Read this on mobile


Angular Js Training In Chennai
Advanced Angular Js training with real world developer scenarios
Angular Js, Web Api and Ionic for .Net Developers
All in one client side application development for .Net developers
Angular Js For SharePoint Developers
Get ready for the future. Its no more just C#

Get Connected

SharePoint Resources

SharePoint 2013 and 2010 Web Parts
Free Web Parts with Source Code for SharePoint Community

SharePoint 2013 Books and Tutorials
Collection of free SharePoint 2013 books and tutorials (eBooks, pdfs)

Supported By

Contribute your article and be eligible for a one month Free Subscription for Plural Sight. The Author of the most popular New Article (published in the previous month) will be awarded with a Free One month Plural Sight Subscription. Article can be sent to in a word document.

Related Resources

Recent Tweets

Twitter October 21, 21:34
How to Add a JS Link Reference to the Display Form or Any other ASPX Programmatically using CSOM PNP in SharePoint -

Twitter October 20, 13:01
How to Add a JS Link Reference to the NewForm and EditForm Programmatically using CSOM PNP in SharePoint Office 365-

Twitter October 12, 12:15
How to Deploy Provider Hosted Apps (Add-Ins) by App Stapling in SharePoint Office 365 -

Twitter October 11, 13:39
How to Deploy Provider HostedApp programmatically using CSOM in SharePoint Office 365 Activating Developer Feature -

Twitter October 10, 09:26
How to Use Angular HTTP Services in SharePoint List -

Follow us @SharePointPals
Note: For Customization and Configuration, CheckOutRecent Tweets Documentation