Saturday, March 8, 2014

Tech Note: Upgrade from Sharepoint 2007 to Sharepoint 2013

You can find these steps all over the place on the web, but I put together this list because of the specific issues I ran into when going through this process.  Since I wrote up the documentation anyhow, figured I'd share it.

We are upgrading from Sharepoint 2007 to Sharepoint 2013.  Below are the basic steps. 


  1. Bring Sharepoint 2007 server up to the latest patches.
  2. Download SQL Server 2008 R2 trial version,
  3. Get the SQL Server 2008 R2 VHD file loaded up on a server, we are using Hyper-V.
  4. Install Sharepoint 2010 on the SQL Server 2008 R2 trial server.  Make sure you select to do a full farm install and not a standalone.  The standalone is for development purposes and will install SharePoint on SQL Express.
  5. Setup SQL 2012 Server
  6. Setup Sharepoint 2013 Server using SQL 2012 Server for its DB. 
  7. OK now make sure every server is fully patched and ready to go then do the following.
  8. Go into the Sharepoint 2007 SQL database and make the content database read only.  By default the content database is wss_content.  By doing this you are making the Sharepoint site read only so that your users can't make anymore changes or add anymore content to the site.
  9. Now that it is read only Export the content database. 
  10. Now import the content database into your SQL 2008 R2 server.  If your table on the old server was wss_content you'll have to rename it when importing it here as there will already be a wss_content database. 
  11. Turn off the read only restriction on the database. 
  12. Now that you have imported the database run the following command in the Sharepoint Management Shell running as Administrator.

Mount-SPContentDatabase “MyDatabase” -DatabaseServer "MyServer" -WebApplication http://sitename -Verbose

  1. When it finishes the site will have been attached to your Sharepoint 2010 server and upgraded. 
  2. Bring up a web browser and confirm that the site has imported properly.
  3. At this point you will need to check your sites authentication method.  In particular is it using Claims Authentication.  The commands below will help you test for claims authentication and then upgrade to claims authentication.

$web = Get-SPWebApplication "http://sitename/

  • If it says False then you'll need to upgrade to Claims, do the following. 

$WebAppName = "http://sitename/
$wa = get-SPWebApplication $WebAppName
$wa.UseClaimsAuthentication = $true

$account = "sharepointadminaccount"
$account = (New-SPClaimsPrincipal -identity $account -identitytype 1).ToEncodedString()
$wa = get-SPWebApplication $WebAppName
$zp = $wa.ZonePolicies("Default")
$p = $zp.Add($account,"PSPolicy")



  1. OK now that you have transitioned the authentication to claims again fire up a browser and check that the site runs OK on Sharepoint 2010.
  2. Now we repeat the process from before though there is no need to make the database read only as this is not a live site. 
  3. Export the content database
  4. Now import the content database into your SQL 2012 server.
  5. Now once again mount the content with the sharepoint site

Mount-SPContentDatabase “MyDatabase” -DatabaseServer "MyServer" -WebApplication http://sitename -Verbose

  1. Now bring up a browser and logon to your new Sharepoint 2013 site, you are done.


No comments:

Post a Comment