Upgrading Microsoft CRM 3.0 to CRM 2011

I am currently working on a CRM 3.0 to CRM 2011 upgrade.  Here are some thoughts on the process that have surfaced as we enter the planning phase…

  • An upgrade to CRM 2011 requires, in addition to the CRM software upgrade, a platform upgrade.  You should expect to be procuring new hardware to run the 64 bit Windows and SQL 2008 platforms.
  • The upgrade process requires you to upgrade ‘through’ CRM 4.0.  You don’t have to use CRM 4.0 but you will need to run the CRM 3.0 to CRM 4.0 upgrade and then upgrade to CRM 2011.
  • You will need to install CRM 4.0 over your CRM 3.0 instance to upgrade it, that is the only upgrade approach available between those versions.  If ‘losing’ your 3.0 environments is unacceptable then you will need additional environments.
  • Your upgrade platform needs to support both 3.0 and 4.0.  Windows 2003 SP2 and SQL 2005 SP3 is the level you need to be at.
  • CRM 2011 will be installed fresh on the new hardware platform.  The CRM database, once upgrade to 4.0, can be imported into the CRM 2011 instance to upgrade it to 2011.
  • Because of the ‘in-place upgrade’ approach required to upgrade from 3.0 to 4.0 it is worth considering whether you can image or snapshot the server prior to the upgrade so that the process is more easily repeatable.
  • You must utilise at least 1 (preferably 2 or more) non-production environments to work through the upgrade process.
  • You are upgrading both the data and the customisations to the system.  The upgrade ‘wizard’ provided by Microsoft takes care of the data but the customisations require refactoring and a bunch of testing.
  • Once you have completed the upgrade process a couple of times you should be confident with the process for upgrading the data.  You can now focus on the customisations.
  • Customisation changes back in the production 3.0 system must be put on strict hold for the duration of the project.  You don’t want to be upgrading in parallel with on going production changes.  And once you start doing an in-place upgrade in your dev and test environments you lose access to those environments for testing on going production changes.
  • Customisations should be re-factored and re-tested in your dev/test/uat environments.

The CRM 2011 production environment can be built in advance.  Once your refactored customisations are production ready and you are confident in the upgrade process you can execute the production deployment process:

      • Refresh the production database to a test environment (you will need a clean CRM 3.0 environment ready for this)
      • Run the in-place upgrade over that database on the test environment (we are deliberately avoiding changes to the production server so we can roll back to it if things go pear shaped)
      • Take the upgraded 4.0 version of your production database and import it into the new CRM 2011 production platform.
      • Deploy your re-factored customisations
      • Test
      • Resume production access

      Note: I’m avoiding steps here regarding the Outlook Client and Email Router etc. as they are not relevant on my project.

    That’s my plan at this stage.  I will come back and edit this blog as the project progresses.  If you have any experiences to share please post comments.

6 thoughts on “Upgrading Microsoft CRM 3.0 to CRM 2011

  1. dmarciel1

    We upgraded to 2011 from 3.0 last year, this would have been helpful! One thing we encountered and are still dealing with is older data in 3.0 that got corrupted in the migration and is causing some funny behavior and issues with record ownership (i.e. we can’t assign older accounts). Our consultant suggests that we should have exported all records to excel and imported in a clean 2011 environment. We’re currently in the process of building a new production environment 6-7 months after our upgrade and will import the data to the new environment just to put all these odd corrupted data issues to rest.

    1. Gareth Tucker Post author

      Interesting. I wonder whether you have records owned by users that were not mapped correctly during a redeployment, I have fading memories of issues back on version 3 in a dev environment that were caused by not bothering to map all users. Exporting all records to excel and importing into a clean environment sounds far too drastic a solution, I would be very reluctant to recommend that.

  2. Zach

    I quite like reading an article that will make people think. Also, many thanks for allowing for me to comment!

  3. Hans

    Thanks for a great article!

    How about if the CRM 3 system dont have any larger custimizations made to it. No more than some extra attributes here and there. Is it not possible to copy the extra fields in an new CRM 2011 system and just try to export all the data from the CRM 3 and the later map all the fileds to import it?
    Migrating the system?

    1. Gareth Tucker Post author

      You can certainly take that approach but you are introducing the need to do a mass data migration exercise, needing to migrate each entity in the correct order and all the complications with foreign keys and things like email content. The advantage of the CRM 3 to CRM 4 upgrade process and the CRM 4 to CRM 2011 upgrade process is they take care of all of that for you.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s