Upgrade Site collections to SharePoint 2016

Introduction

In this blog post, I want to show you a practical way in order to upgrade a simple SharePoint 2013 site collection to SharePoint 2016. When you want to Upgrade your SharePoint 2013 site collection to a SharePoint 2016, you should have installed SharePoint 2013 service pack 1 before beginning the upgrade process.

We use the database attach method in order to upgrade to SharePoint 2016 and it is assumed that you have a working farm of SharePoint 2016. In this blog post, I don’t cover how to setup the SharePoint 2016 farm and configure the service applications.

Side view profile sequence head shots thoughtful, thinking, finding solution young man with gear mechanism, question, exclamation sign illustration isolated grey background. Human face expressions

According to the Microsoft TechNet Article, “SharePoint Server 2016 supports an upgrade from SharePoint Server 2013 with Service Pack 1 (SP1) with March 2013 PU, version 15.0.4481.1005 or higher.”

https://technet.microsoft.com/en-us/library/cc262483(v=office.16).aspx

“All database must be upgraded to version 15.0.4481.1005 or higher, otherwise upgrade to SharePoint Server 2016 will be blocked.”

SharePoint 2013 to SharePoint 2016 upgrade Steps

  1. Create a new site collection in SharePoint 2013
  2. Move the site to a temporary database
  3. Make a copy of DB in SharePoint 2013 environment and move it to the SharePoint 2016 database server
  4. Test the SharePoint 2013 attached DB in SharePoint 2016 environment, Mount the DB and upgrade DB
  5. Change the site collection owner and Hit the site and test everything

Step 1 – create a new site collection in the SharePoint 2013

You may currently have a site collection that you can use to do your POC (proof of concept) upgrade. But in this blog post, I will create a brand new site collection in the SharePoint 2013 environment to test the upgrade process from SharePoint 2013 to SharePoint 2016.

in this Powershell cmdlet, we create a new site collection in SharePoint 2013 based on the team site template.

Step 2 – move the site collection to a temporary database

It is always good to move the site collection into a new database and then move the new database to SharePoint 2016. By doing this, you will not face any orphaned object problem while upgrading. Sometimes SharePoint doesn’t clear the database nicely when you delete items from the interface and this will cause the orphaned object problem. Orphaned object means you have deleted something from the SharePoint interface (list, subsite,..), but the object is still exist in the database level. So it is always a good practice to move the site collection to a new database before upgrading.

After moving the site into a new db, you have to do IIS reset

Step 3 – move the DB

This step is done on SQL Servers. First you have to login to your SharePoint 2013 SQL Server machine and connect to your SQL Server instance with the SQL Server management studio.

Expand databases node, right click on the database name -> tasks -> backup

Copy the backup file to the SharePoint 2016 database server.

Open SQL server management studio in SharePoint 2016 database server.

Connect to the database server

Right click on database, select restore database

Select the device and select your backup file

Double check everything, and click on ok

The database name will show in the list of databases

Now you have to add the farm account to the database as the db_owner role.

Expand the database name -> security – > users and add the SharePoint 2016 farm account

[I have different accounts for setup and farm as Microsoft suggested in the best practice, I added both of them as the user of this db and made them db_owner]

Step 4 – test and mount the DB

If the managed path does not exist in SharePoint 2016, you can create it with this cmdlet:

These powershells must be run on your SharePoint 2016 farm

6

Step 5 – verification

now the upgrade process is completed. It is likely that you have different accounts to access your SharePoint 2013 and SharePoint 2016 environment. So now if you hit the site you will see an access denied message. You have to login to the SharePoint 2016 central administration and change the site collection administrator for the newly upgraded site to your SharePoint 2016 site admin. Then you can hit the site and see the home page of the site.

7

In order to verify that the upgrade process is done without any error, you have to go to the site settings and under the “Site Collection Administration” section, click on the Site collection upgrade link.

8

 

You see the upgrade page, you can now click on the Review Site Collection Upgrade Status to see the report.

9

As you see in the upgrade process is done without any error or warnings

10

Here you have the whole powershell script for this blogpost. You can use this powershell to upgrade your sites from SharePoint 2013 to SharePoint 2016. Just remember step 1 and 2 are done in SharePoint 2013 environment, step 3 are done on SQL servers of both environment via GUI and step 4 and 5 are in SharePoint 2016 environment

 

About

MCSE, PMP, With more than 12 years experience in Microsoft technologies.

View all posts by

2 thoughts on “Upgrade Site collections to SharePoint 2016

  1. Please can you advise what this line does and how do i find the variable to enter.
    $wa.GrantAccessToProcessIdentity($varSharePoint2016ServiceApp)

    Thank you great article

    1. It is the name of the app service credential, like user_svc_app
      the reason you have to do this step is to give the user access to the SharePoint database. If you don’t do that, after the upgrade, your service applications proxies like the Excel service does not render the excel pages correctly.
      It simply gives the service app user the permission to access SharePoint DB

Leave a Reply