Disaster Recovery
One item to take good measures on is to setup a good and solid backup strategy for your Microsoft Dynamics CRM installation. What I've done in the past is do full backups of SQL Server on a nightly basis with hourly transaction log backups on the databases. Additionally, backing up third party databases, folders, etc. is a good measure. Below is the checklist that I use to make certain not only our company databases are backed up efficient and hourly.
- Nightly full SQL Server backup of the following databases
- c360_MSCRM - We utilize c360 for every installation
- Custom_MSCRM - This is a custom table we have and is set to simple mode that I use for an AutoNumber routine, SharePoint integration, custom views, etc. as one NEVER makes customizations to the core MSCRM database as this breaks support for the system
- Hourly transaction log SQL Server backup of the following databases
- That's it as the other databases are set to SIMPLE database mode so transaction logs aren't needed
- Export of entity metadata - Although this is part of the databases above I also make certain to always backup the metadata separately as well. Below is the naming convention I use which mkaes sort, searching and finding of the files easy within a file structure
- CompanyAbbreviation-Date_20071013-Customizations-v00.xml - The first export is alwlays -v00
- Each day the convention starts over with teh first one each day being v01 and then after a few hours of customizations (or after lunch) I create a v02, v03, etc. This can be considered overkill but from a recoverability standpoint it makes solid sense
- Backup of files
- C:\Program Files\Microsoft CRM - I typically will backup (ZIP) the entire directory after the initial install, again with the -v00 so I know this is the original backup and then do additional backups as workflows, configuration files, etc. are changed. I also backuup the configuration files prior to any changes. Each night the standard server backup backs up this information as well as a final level of backup.
- C:\Program Files\c360 Solutions - Again same as above and is only if you have c360 installed
- Reports
- Although it's easy to recover the core reports with SQL Server Reporting Service you may make modifications to these reports and also add reports to the system. These reports should be backed up as well.
- The Visual Studio solution should be backed up and if possible document versioning incorporated as well. I utilize Microsoft Team System to provide this functionality.
- Backup the encryption key of the reporting services server
- Web Services
- Almost every installation we have custom web services installed for handling SharePoint site creation, AutoNumber routines, etc. and these files should be backed up
- Documentation
- The very last step is to write up a complete set of documentation of what's being backed up but also, and possibly more importantly, how to do the disaster recovery restoration for both one or two areas as well as the entire system.