European SP Conference – Real Time Upgrade to SP2013

I am currently in Copenhagen attending the European SharePoint conference. The conference began with a number of eight-hour tutorial sessions which covered a number of key IT Pro and DEV tracks.

After much deliberation, I decided to attend the ‘Real Time Upgrade SharePoint 2010 to SharePoint 2013’ session with Eric Harlan (Microsoft, USA). And it was an inspired choice, as Eric not only covered all of the upgrade steps in great detail, he also provided some useful demonstrations (all via Azure). In fact, the content was so comprehensive, we ran out of time and didn’t cover the migration of Service Applications in the kind of detail the subject deserves.

Hopefully, the topics we didn’t have time to cover in great depth, Eric will be blogging at some stage. One of these was the various permutations (and there’s plenty to ponder) when migrating the User Profile service. And unfortunately we only began tackling this subject when there was only 15 minutes left on the clock!

Below are some key points and guidelines which Eric highlighted, although this is only really a high-level overview when there was so much in-depth content covered. Hopefully the notes I made are accurate, so please correct me otherwise!

I’ll be bringing you further blog posts throughout the week as the conference progresses.


Requirements Overview

  • SQL Server – physical server if at all possible.
  • Search Server 8-16 GB RAM, FAST now imbedded so therefore, no requirement for a separate sku
  • 24GB of RAM for single ‘all-in-one’ box
  • App Fabric (Distributed Cache), new feature. Minimum of 8GB RAM, Max of 16GB RAM. Never more, never less
  • Stretch Farms no longer supported. Latency between servers has to be under 1ms
  • Gigabit bandwidth for each server
  • .Net 4.5 and .Net 3.5 BOTH have to be installed
  • People Picker now highly dependent on Authentication (i.e SAML Claims, Forms)



  • Scripted install if at all possible.
  • Never use the ‘Farm Configuration Wizard’. Significant limitations. (I.e databases created with GUID’s, single service account deployed as identity for multiple Service Apps. Best practice is for separate account per service app (although this would leave you with around 18 accounts)

    Only use in DEV environment which will never be used again


    New/Improved Features

  • AppFabric (Distributed Cache). Provides ‘real-time’ social features in SharePoint
  • Search.

    FAST is fully integrated

    Web Analytics as an independent service app, is deprecated, and is now included within Search. No supported way of migrating a SP2010 Web Analytics service app to SP2013 as the database is now contained within Search. Would require custom code to expose legacy analytical data.

  • Translation Services

    Cloud-based translation of MS documents

  • App Management.

    Welcome to the concept of an App Store! (Cooperate v MS)

  • Access Services.

    2010 available for backward compatibility

    Possible alternative to InfoPath

    1GB SQL database per site

  • Workflow Management
  • Work Management Service
  • Shredded Storage

    Decreased I/O costs with just file deltas


    Content Database Attach

  • Distinction between ‘migrate and upgrade’
  • ‘Timing’ is everything. Make sure you plan your steps carefully, ensuring ALL your dependencies are in place before your mount (i.e Managed Paths, all customisations)
  • No ‘in-place’ upgrade available
  • AAM deprecated, albeit still available. This has much to do with the advent of host-named site collections.

    Only Claims Web Apps (Windows Authentication deprecated). Classic Web App creation only available via PowerShell. Claims is default in Central Admin

  • If no Managed Path defined, site will no longer be orphaned following migration to SP2013, but SharePoint will define a unique managed path. So, the site will be accessible (good thing), but you may have an ambiguous URL path (bad thing). Lesson to be learnt…….always ensure managed path defined in Web App before your mount.
  • SP2010 Fast Search databases cannot be migrated in SP2013. Only the Admin database can be migrated. Therefore, everything will need to be re-crawled
  • Two modes ‘2010’ and ‘2013’- ’14’ folder co-exists alongside the ’15 folder. Therefore, a SP2013 Site Collection can exist in SP2010 mode and be totally seamless to the user
  • Upgrade takes place in TWO stages. ‘Mount-SPContentdatabase is a SP2010 command, and will provide a SP2013 site collection in SP2010 mode (database upgraded/schema aligned)

    Second step is ‘Throttle Controlled Site Upgrade’. Admin can determine whether site AND database is upgraded to begin with and also the timing, which is configured and controller by a timer job. This allows for a more granular, scheduled approach

    If you upgrade MySite host, all new MySites will go straight into SP2013 mode. Existing MySites are upgraded on the SECOND time they are accessed via end user (so warn your users!)

  • Upgrade SP2010 content databases to Claims before upgrade to SP2013
  • Always use ‘Test-SPContentdatabase’ before ‘Mount-SPContentDatabase’ to make yourself aware of any potential problems. This will also show any ‘blocking’ scenarios
  • Most likely to cause upgrade issues:
    • Web Parts
    • MasterPages
    • Themes
  • Dictate whether solutions should go to either 14/15 hive or BOTH
  • Use Powershell to migrate a Web App from Classic to Claims


    Service Application Upgrade

  • No direct path from Moss 2007 to SP2013 (possible 3rd party solution)
  • Database server level must be 2008 R2 or SQL 2012
  • SP2010 Farms can consume SP2013 service apps (Search, MMD, US). But SP2013 cannot consume SP2010 service apps.
  • Following databases can be migrated:
    • Search Admin
    • User Profile x3 (try to avoid upgrading ‘synchronisation’ database, unless you want a lot of stress!)
    • MMD (remember to consider Content Hub URL changes)
    • Secure Store
    • BCS
    • PPS
  • Process to upgrade:
    • Create Service App Pool
    • Create New Service App
    • Create Service App Proxy
    • Attach Service App database
    • Clean-up any outstanding tasks