Microsoft CRM 3.0 32 bit to 4.0 64 bit

Last week I helped a client move from CRM 3.0 32 bit to CRM 4.0 64 bit. Note that 3.0 never came in a 64 bit version so the 32->64 bit upgrade has to happen on the 4.0 side. The procedure described below assumes the existence of a 32 bit staging server to keep the production environment running during the upgrade but it is not strictly necessary.

  1. Backup/restore the 3.0 32 bit database to the staging server
  2. Install 3.0 on the staging server, instructing the installer to use an existing database. Point it at the database you just moved (I highly recommend consulting the redeployment tool at this stage, as getting the databases right is rather hit ‘n miss)
  3. Upgrade the staging server to 4.0 32 bit
  4. Install 4.0 64 bit on the new production server, don’t worry about creating a default organization, you can remove it later on
  5. Backup/restore the 4.0 32 bit database to the new 64 bit production server. Note that you can’t use detach-attach to move from 32 bit to 64 bit — attempting this will bork the database
  6. Use the 4.0 deployment manager “Import organization” feature and point it at the database you just moved
  7. Make the newly imported organization the default one
  8. Depending on the extend of the customizations to the 3.0 installation, some fiddling may be required to get everything running on 4.0

That’s it! And there wasn’t but a single import/export customizations step. The new “Import organization” feature in the 4.0 deployment manager is an absolute killer for this sort of mucking around — use it.