Steps to relocate CRM 3.0 install to a new CRM 4.0 server and DB server

Hi there,

I need assistance in redeploying my Microsoft CRM 3.0 installation to a CRM 4.0 installation to a new server. My current environment is as follows:
App Server:
- Win 2K3 sp1
- CRM 3.0 with update rollup 2
- SQL Server Reporting Server 2000 (for hosting CRM Reports)

Database Server:
- Win 2000 sp4
- SQL Server 2000 sp4 (default instance)
- Hosts "ReportServer" and "ReportServer_tempDB" databases for Reporting Services on App Server
- Hosts "CompanyName_METABASE" and "CompanyName_MSCRM" databases for CRM 3.0 application

My proposed environment:
App Server:
- Win 2k3 with CRM 4.0 application

DB Server:
- SQL 2005 Ent cluster with sp1 instance (hosts other databases on this instance)

Reporting Server:
- SQL 2005 Reporting Services (want to have a separate install of Reporting Services that is used by CRM 4.0 to host reports, but also want to use this reporting server for other custom reporting)

Basically, I thought the first step would be to get my 2 databases "CompanyName_METABASE" and "CompanyName_MSCRM" onto my SQL 2005 server and use the "Deployment Manager" installed on CRM 3.0 server by default to "configure the SQL server" to the new Database server and instance. This seemed straight forward and I followed a MS article, but failed with authentication issues on the database after following article exactly.

My main aim is to get CRM 4.0 installed into my environment with a method that allows a good fallback option if required and to be able to get my existing data and customisations into the new CRM 4.0 installation.

Any assistance with regards to this process would be greatly appreciated.

Who is Participating?
Biffster007Connect With a Mentor Commented:

I would do a CRM 3.0 redeployment to the new server then upgrade to CRM 4.0 after that.

Try doing the following steps for the redployment to the new servers...

1) Backup your current CRM databases
2) Uninstall CRM from Add/Remove Programs
3) Delete the 'Microsoft CRM' folder and all it's contents from the Program Files group
4) Delete the Microsoft CRM website from the IIS console
5) Delete the four CRM groups from the Organisational unit you selected when you installed CRM
6) Delete both the current CRM databases
7) Attach the previous 2 CRM databases that you have
8) Install the CRM Redeployment Wizard located on the CRM 3.0 disk
9) Run the Redeployment Wizard mapping old users to current users
10) Install CRM, specifying the same Organisation Name as the original installation, using the Connect to existing database option and continue with the setup

Then upgrade to CRM 4.0 after successful completeion of the above.

I will weigh in a bit here:
A Redeployment is a fine option, but doesn't give the rollback I think that you want.

-Apply SP2 to SQL 2005 (it is a requirement for CRM 4 and you'll have to do it before or after  getting CRM working to the new server.
- Backup and Restore Metabase and MSCRM to new Server.
- likely you will want to script out the 4 MSCRM based jobs there as well and import them on new server.
- With both sets of DBs active, open the Deployment Manager and change the location of the SQL Server.
- Take the original DBs offline (don't switch SRS at this point).
- Test CRM from original CRM server.
- Build SRS server using SQL 2005 and SP2.  Put the Databases on new SQL server.
- Republish CRM Reports from first server using as guide.

- If your new proposed CRM server is NOT 64 bit, install CRM 3.0 on it. Using Existing DB option - point to new SRS for now. (Reports MAY NOT WORK due to Kerberos Double Hop)
- Make sure any custom code is moved over.

- Backup DBs before upgrading (for rollback if necessary)

- At this point I will assume your system is "upgradeable" (there are plenty of good gotcha posts here and on the internet for upgrade issues)
- Upgrade the New CRM Server to CRM 4.0

This gives you OLD SQL 2000 server, untouched (to roll back if SQL move fails)
AND OLD CRM server to rollback to if Upgrade Fails
kineticexpertAuthor Commented:
Thanks for both posts guys. This redployment I am facing took a back seat for a while and probably because I never felt comfrotable with tackling this one without a good failback option.

WilyGuy - I like your approach and am thinking to attempt this method.

- I agree first step is to upgrade to SP2, trying to get this scheduled in, but my setup is a single instance with a number of databases and need to go through thorough testing prior to making this upgrade, hence the delay to date. I assume there is no issues in hosting my CRM databases on this instance and then when doing the new install of CRM 3 using existing DB option, will work fine and further work fine with upgrading to CRM 4?

- sorry, only got basic SQL skills - I am not sure on the process to "script out" the existing CRM jobs, is this simply right click on job and "Generate SQL Script", then check out the preview and paste that into a SQL query on the SQL 2005 server and execute and it should create the job? Can you please let me know all the jobs that need to come across? I see other random ones, possibly from other databases.

- I am using my new CRM server as my Reporting Server, as I only need to use SQL 2005 reporting Services for can you confirm I would sitll be able to just build up my CRM server and install Reporting Services and complete the switch as per instructions above and later install CRM 3 as per instructions above?

- How do I check where there is custom code and also relocate it? Originally we had a 3rd party doing some work, most of it was reports, but I don't have documentation of any custom code being created, so want to make sure I relocate that.

Thanks heaps for the assistance so far.
Cloud Class® Course: CompTIA Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

Your CRM 3.0 DBs should be fine on the SQL 2005 at SP1, I just made the comment because many people have apprehensions about applying an SP with production databases.  This is already the case for you though since other DBs are there.

The "Script Out" is exactly what you describe, right click, generate the script and it should save as an .sql file.  You can put this on the new server and double click it (then it will open in the new SQL Studio and you can jut hit the Execute button.  There are likely other Maintenance jobs that you should probably confer with a DBA to determine if they should come over.  There are 4 main jobs that begin with MSCRM.

So NEW CRM box is also SRS....that's fine.  I would install SRS ahead of time (since it is 2005 version) and point that to the new server.  Depending upon order of operations, you would have SRS 2005 on NEWCRM pointing to NEWSQL, then on OLDCRM deployment manager, change the location of SRS.  Then from the OLDCRM, you can republish the reports.  Then you can install CRM 3.0 on NEWCRM with the USE Existing DB option.  Point SRS to the SRS you set up previously on NEWCRM.

Custom code for CRM 3.0 can be in a few locations.  My favorite place for Callouts (customizing CRM can be with Callouts, Customization (already in the database), Workflows, and Reports (may or may not be in the republish, so verify).  To look for callouts, look for a file called callout_config, likely in C:\PF\MSCRM\Server\Bin\Assembly (some abbreviation of file structure).
So how did the upgrade go?
kineticexpertAuthor Commented:
Hi guys,
I have not ended up completing this. After some time, we have found we are not going to upgrade as we are looking at decommisioning the product as it is not being used to its potential and is a bit of an overhead at present. If we ever need it again, we will be looking at starting from a fresh install of the latest version.

Thanks for your assistance.
kineticexpertAuthor Commented:
P.S. Anyone know how to close of this posting without accepting it as a correct solution?
Well, both Biffster and I gave you solutions.  I would accept them.

You wouldn't get a refund anyway after so much time and solutions offered.  Just split the points.
I agree...

kineticexpertAuthor Commented:
It didn't give me the option to allocate points? Did you both get points on this?
I didn't, Biffster appears to have.  No big deal, so long as the question is closed.
kineticexpertAuthor Commented:
Sorry WilyGuy. Thanks for your assistance.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.