Friday, January 20, 2012

Unable to upgrade CRM 4.0 database more than once

My colleague Rickard had an interesting problem yesterday when working with a client of ours. They had a prototype upgrade and now wanted the production upgrade. However, they wanted both of these organizations to be available (yes, will required an Enterprise license or separate SPLA licensing if it is a hosting environment). The prototype upgrade they want to be available as "orgname-old" and the normal upgrade just as "orgname".

An interesting issue arose when Rickard tried to import the CRM 4.0 database into the CRM 2011 environment he receive an error message saying that a CRM 4.0 database can only be imported once into a CRM 2011 deployment. This might be noted somewhere but it is not something that I or my colleague Rickard have ever seen when working with CRM and we didn't find to much about it googling the issue either.

The problem seems to be that Microsoft seems to have cut a corner when upgrading a CRM 4.0 database in comparison to normal redeployment as it does not give the organization a new GUID. Hence you cannot import two organizations twice.

The workaround is, however, quite simple, upgrade the first database, disable it and remove it from deployment manager (do not delete it from the SQL-database).

Upgrade the second database into CRM 2011. As there is no organization with this GUID now, this is no problem.

Now, import the first database (redeployment) that you previously disabled and removed from deployment manager. You can now give it a new name if you like. As this is a redeployment, it will give this a organization a new Guid and the two organizations will not conflict.

If you are creative you can probably think of you own solution using similar techniques.

Big thanks to Rickard for input to this posting!

Gustaf Westerlund
CEO, Chief Architect and co-Founder at CRM-konsulterna AB