Updated 9 Jan 2009 as I needed to repeat these steps again, and so have
clarified them a bit!
I am in the process of performing a CRM restore, when I came across this cryptic message: “One or more Microsoft CRM groups do not exist”.
I am restoring into a new Active Directory so the groups do not exist, but the installer does not create them or tell me what they should be (in full). It tells me via help that the groups need to be called:
- PrivUserGroup
- ReportingGroup
- SQLAccessGroup
- UserGroup
But what it misses out is that these groups are to be suffixed with the Organisation GUID for the previous installation (who’s databases I have, and am restoring CRM using).
The organisation GUID is stored in the database, and you need to run the following SQL query on the MSCRM SQL database to get the answer:
- SELECT TOP 1 OrganizationID, Name FROM organizationbase
Also ensure that during the reinstall of CRM 3.0, you set the Organisation name to that which is returned from the database and use the same product key as before. The product key can be obtained using “SELECT licensekey FROM license”
You also need to set the buildnumber in the BuildVersion table to 0 and delete any mentioned Qfe values, noting them down so that you can install these hotfixes later on.
Finally you need to change the GUID in OrganisationBase for each of the four groups above to the new objectGUID value for each group that you have just created. Using adsiedit.msc (part of the Windows Support Tools on the Windows Server installation CD-ROM) view the objectGUID value for each in hex. Then copy the value to notepad and reverse the first four groups of characters, reverse the next two groups of characters, reverse the third group of two and copy and paste the fourth group of two and the final group of six (the last two groups are not reversed). Note that you do not reverse each pair of characters individually, but treat each pair as a group and reverse the groups as shown below. Put curly braces on the new GUID and paste into SQL Enterprise Manager (or if using SQL 2005 run a script as shown below.
For example:
- objectGUID=0x 1x 2x 3x 4x 5x 6x 7x 8x 9x Ax Bx Cx Dx Ex Fx
becomes:
- GUID in database={3x2x1x0x-5x4x-7x6x-8x9x-AxBxCxDxExFx}
- SQL 2005 Script (no {} in GUIDs here though): UPDATE OrganizationBase SET UserGroupID=’GUID’, PrivilegeUserGroupID=’GUID’, ReportingGroupID=’GUID’, SQLAccessGroupID=’GUID’
During the installation you need to ensure that the installation user does not exist in SystemUserBase. To do this find the current installation user in the DomainName column and rename this users domain name (for example DOMAIN\administrator becomes DOMAIN\xxAdministrator). A new user will then be created during this installation.
Finally once installed, start the Deployment Manager tool and reassociate all the users with the newly created user in the new Active Directory. Restoring CRM into an existing AD is much simpler – just the Organisation Name and Product Key need to be retreived.
Leave a Reply