Step by Step Guide to Migrating CRM 4.0 to CRM 2011

There are 2 ways you can do a migration from Microsoft CRM 4.0 to Microsoft CRM 2011 on-premise: an in-place migration where you upgrade the existing CRM 4.0 install to CRM 2011 using the very same server(s) OR an upgrade where you migrate to a new CRM 2011 server(s).

If you have the available server hardware, the 2nd approach is probably best. With this approach, the existing production server running CRM 4.0 is not changed. So if your migration goes bad, you haven't affected the production environment. Also, keep in mind that since CRM 2011 requires the latest Microsoft technologies (Windows Server 2008, SQL Server 2008) a lot of people are forced to migrate to new servers anyways.

Here is a step by step guide to migrating using this 2nd approach (where you have new server(s) that will host CRM 2011):

1. Perform a fresh install of Microsoft CRM 2011 on a new server(s). You can have 1 server that hosts both the web application and the SQL databases or you can have 2 servers: 1 to host the web application and 1 to host the SQL databases.

NOTE1: Attached is a zip file that contains the Microsoft CRM 2011 implementation guide in compiled help format.

NOTE2: Ideally, when you create an organization, use a name that does not match your current organization. When you eventually import your current organization, you won't be able to re-use the same organization name if the new organization name you create right now matches your old name. So use a name like "Test company" or "new company".

2. Make a backup using SQL Server Management Studio of your existing CRM 4.0 sql organization database (it will have a name like OrganizationName_MSCRM).

3. Physically copy the backup from step 2 to your new server that will be hosting the SQL Server 2008 databases behind your CRM 2011 install.

4. Create a new sql server database on your new server hosting the SQL Server 2008 databases for CRM 2011 using SQL Server Management Studio. You can give it any database name.

5. Restore the backup from step 2 over your new sql server database from step 4.

6. Open the CRM 2011 Deployment Manager software that is running on your new machine that is running the CRM 2011 web application. Click on the Import Organization Wizard.

FYI: this Microsoft website has good screenshots of this step:

7. In CRM 2011 Deployment Manager, notice that you now have 2 organizations.

The URLs of these 2 organizations are slightly different based on the name:

http://server/NewOrganization/main.aspx (original test organization)

http://server/RealOrganization/main.aspx (the production organization you just converted)

You can disable the new organization in CRM 2011 Deployment Manager.

8. If you just type in http://server in your browser, your browser will re-direct you to one of these 2 organizations. If you have disabled the "new organization" you may even get an error message when you type http://server/ into the browser as it will try to re-direct you to a "default organization" that you have disable.

9. Each CRM user has a "default organization". See the article for discussion of this issue.

10. Were there any add-ons to CRM 4.0 installed? Normally, Microsoft's guidance says to remove them from CRM 4.0 before you migrate the data to CRM 2011. But that's a bad idea if your trying to do the CRM 2011 conversion without touching your production CRM 4.0 box. This website has some thoughts: