Ask Learn
Preview
Please sign in to use this experience.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Over the years, much has been written about upgrading SharePoint. TechNet has some very good resources (links below) that provide process overviews, checklists, etc. I encourage you to review this content prior to beginning an upgrade of SharePoint. So what is the real point of this post? While the referenced material and many other resources provide necessary information, the point of this post is to cover some of the "gotchas" and details that are often overlooked and cause headaches during the migration. This post will focus on migrations using out-of-the-box tools and techniques. SharePoint 2010 to SharePoint 2013 upgrades will be the primary focus, as there are some significant performance snags that can occur during the upgrade process. However, the process and guidance is also applicable to upgrades to SharePoint 2016. If you are upgrading from SharePoint 2010 to 2016, you need to go through SharePoint 2013.
Content cleanup/preparation and thorough testing are ABSOLUTELY CRITICAL to a successful migration. These tasks can be difficult, especially content cleanup activities that require your end users to take actions such as redesigning solutions and reviewing content. However, the effort put into doing proper cleanup and testing will pay huge dividends on migration day. With that in mind, I want to call out key activities in these areas.
Content Cleanup/Preparation:
Many of the performance hindrances in a migration are the same issues that cause performance issues during "normal" use of a SharePoint farm. Pay attention to the boundaries outlined here. There are several "hidden" areas in SharePoint that can accumulate excessive amounts of data. With the upgrade from SharePoint 2010 to 2013, there are some significant database schema updates that require data to be moved between tables. In order to perform these changes, the upgrade process will copy the data out of the tables, then add it back after the schema changes occur. This can cause extremely long periods in which the process from the SharePoint admin side looks like it is stuck (especially at 4.85%). Reducing "excessive" data is a critical cleanup step. List below are key areas to target for cleanup. For customers that have Microsoft Premier Support contracts, an escalation engineer can provide a SharePoint Performance Diagnostics tool that will analyze and report on performance-inhibiting conditions within a farm. The escalation engineer will also be able to assist with analysis of the output and providing guidance on remediation of the issues.
Automate Your Migration Process:
There are content databases that will take many hours to upgrade, especially if cleanup tasks are not thoroughly performed. In several recent migrations, my customer had numerous databases that took over 12 hours each to upgrade. If you are in an environment that enforces limits on server sessions, babysitting upgrade sessions can be extremely tedious. A few hours spent creating some PowerShell scripts that can be run as scheduled tasks will pay exponential dividends in terms of manpower savings, as well as allow consistent, repeatable processing.
Test, Test, Test... Then Test Some More:
At a minimum, perform one end-to-end migration dry run. This MUST include transferring your data, testing all content databases in the new farm (Test-SPContentDatabase) and mounting all content databases in the new farm. Without at least one dry run, you will have no insight into which databases are going to take significant amounts of time to upgrade. I always recommend multiple full dry runs, as it enables the establishment of average run times and ensures that there are no surprises on the production migration run. As part of testing, identify those databases that are taking excessive amounts of time to upgrade. I have heard of instances where a single content database has taken upwards of 48 hours to upgrade and seen multiple instances of 12 hours or more per database. Part of the testing needs to include running Test-SPContentDatabase on the content after it reaches the new farm. This will enable you to identify sites that are referencing components that are not present in the new farm (whether intentionally missing or simply an oversight). Additionally, it will allow you to identify migration blockers such as wide lists.
Have Patience... Plenty of it:
Unless you are absolutely positive that your migration process is stuck, have patience and let it run. The tendency when an admin feels a process is stuck is to terminate the process and restart it. However, doing that during a content database upgrade can cause corruption in the content database. There are several points in the upgrade process between 2010 and 2013 in which the upgrade might appear stuck (such as at 4.85% and 27%). Before terminating any upgrade process, have a database administrator monitor the process to determine if any action is occurring. In scenarios where there is extreme amounts, such as the audit data scenario described above, activity will continue to occur on the database side, but might be extremely slow (a few KB at a time). If you are seeing any movement on the database side, have patience and let it run. When in doubt, have patience and let it run.
Other Things to Consider:
SharePoint 2013 provides the ability to create an evaluation site, as well as the ability for sites to remain in a SharePoint 2010 user interface mode. While these features have merit, there are some drawbacks that need to be considered.
Please sign in to use this experience.
Sign in