Google Anlatics

Tuesday, March 13, 2018

Migrate Dynamics CRM 365 Online to Dynamics CRM 365 On-Premise

Recently, I have been involved in migrating Dynamics CRM 365 Online to Dynamics CRM 365 On-Premise. Migrating your Dynamics CRM system from the cloud to an on-premise environment can bring a number of benefits, including increased control and customization, as well as the ability to integrate with other on-premise systems. However, the migration process can be complex and requires careful planning and execution.

Here's a step-by-step guide on how to perform the migration: 
  1. Obtain a CRM Online database backup from Microsoft.
  2. Create a new Dynamics CRM 365 On-Premise environment.
  3. Restore the database in Dynamics CRM 365 On-Premise from the online version.
  4. Fix any issues that arise after the database restoration.
See the details of the above points below.

1. Obtain a CRM Online database backup from Microsoft

To obtain a CRM Online database backup from Microsoft, you will need to follow these steps:
1. Sign in to your Dynamics CRM Online organization.
2. Go to the Settings menu and select the Data Management option.
3. Under the Export section, click the Export button.
4. Select the data that you want to export, including entities, records, and the related data for those records. You can also choose to include deleted records in the export.
5. Click the Start Export button to initiate the export process.
6. You will receive an email notification when the export is complete, along with a link to download the exported data.
7. Click the link in the email to download the exported data. This will download a ZIP file containing the exported data.

Note: The export process may take some time, depending on the amount of data being exported. Also, be aware that the exported data will be in a compressed format, so you will need to extract it before you can use it.

It's important to mention your SQL version when requesting the database backup from Microsoft. If you're using SQL standard version, TDE (Transparent Data Encryption) will not work and you will need to remove it from the backup. On the other hand, enterprise version will support TDE key. Microsoft will send an email to your global admin email address, which you need to provide when requesting the database backup through a support ticket.    

2. Creating a new environment for Dynamics CRM 365 On-Premise

Creating a new environment for Dynamics CRM 365 On-Premise requires careful planning and consideration of several factors. Here are some things to consider:

Network and infrastructure architecture: This is a crucial aspect of the new environment, and it needs to be designed carefully to ensure that the system is stable and scalable. You should consider factors such as the number of teams working on the project, the current network architecture, and any restrictions or limitations you have in your network (e.g. firewall rules).


Server and software requirements: Determine how many servers you will need to purchase, including those for CRM, SQL, and ADFS (Active Directory Federation Services). You will also need to purchase software licenses for the various components of the system, including Dynamics CRM 365 itself (even if you have user licenses, or CALs). You may be able to obtain these licenses from a partner.

Cluster and disaster recovery (DR) environment: Consider what kind of cluster environment you will need, as well as the DR architecture and environment.

Other application integrations: If you have other applications that will be integrated with Dynamics CRM 365, such as mobile, SFTP, or a web server, make sure to consider these in your planning.

Mobile, SFTP, and web server integrations: If you have other applications that will be integrated with Dynamics CRM 365, such as a mobile app, SFTP server, or web server, make sure to consider these in your planning.

Network team: Work with the network team to ensure that the necessary firewall rules are in place and that all required ports are open. You will also need to obtain SSL certificates for the system.

DBA team: The DBA (database administrator) team will be responsible for installing and configuring SQL, as well as the reporting service. They will also need to set up failover and always-on configurations as needed.

Backup plan: Develop a comprehensive backup plan that covers the operating system, database, and virtual machines. This will help ensure that you can recover from any unforeseen issues or disasters.

To install and configure Dynamics CRM 365 On-Premise in a new environment, you will need to follow these steps:

1. Install CRM 2016.
2. Upgrade to Dynamics CRM 365.
3. Install the latest CRM rollup available.
4. Configure the ADFS (Active Directory Federation Services) server.
5. If you are using two-factor authentication (2FA) or multi-factor authentication (MFA), install and configure the MFA server in the ADFS server.
6. Configure the SSL certificate in the CRM server using the deployment manager.
7. Configure IFD (Internet-Facing Deployment).
8. Set up claim-based authentication.
9. Create the necessary DNS entries.
10. Set up load balancing if your CRM environment is a clustered, multi-server environment. You can use a load balancing solution such as F5 or NLB, or another method.

Keep in mind that these steps are general guidelines, and the specific process may vary depending on your organization's needs and requirements. It is important to carefully plan and test the installation and configuration process to ensure that it is successful.

3.  To restore a CRM Online database on Dynamics CRM 365 On-Premise, you will need to follow these steps:

1. Obtain a CRM Online database backup from Microsoft, as described in a previous answer.
2. Create a new Dynamics CRM 365 On-Premise environment, as described in earlier answers.
3. Restore the database in the new environment using the backup file you obtained from Microsoft. This can typically be done using the SQL Server Management Studio.

4. Fix any issues that arise after the database restoration

After the database has been restored, you may encounter issues with plugins and workflows not functioning correctly. To fix these issues, you will need to register the plugins and workflows again using the plugin registration tool, and change the sandbox mode to "none."

Keep in mind that the process for restoring a database and fixing any issues that arise may vary depending on your specific environment and requirements. It is important to carefully plan and test the restoration process to ensure that it is successful.

Here are some additional steps that you may need to take to fix issues that arise after restoring the database in Dynamics CRM 365 On-Premise:

1. Verify that all customizations have been successfully restored. This includes custom entities, fields, forms, views, workflows, and other customizations.
2. Check for any missing data or inconsistencies in the data. This can include missing records, incorrect field values, or broken relationships between records.
3. Repair any broken links or references in the data, such as records that are pointing to non-existent records or records that have invalid data.
4. Check for any errors or warnings in the event log or system job history, and troubleshoot and resolve any issues as needed.
5. Test the system to ensure that it is functioning correctly and all customizations are working as expected. This can include testing all custom entities, fields, forms, views, workflows, and other customizations.
6. If you are using any third-party tools or integrations, verify that they are functioning correctly after the database restoration.
7. Review and update any custom scripts, reports, or integrations that were created before the migration to ensure that they are compatible with the new environment.
8. Ensure that all users have the necessary permissions and access to the system, and that their roles and security groups are properly configured.
9. Review and update any data policies or data governance practices that were put in place before the migration.
10. Consider creating a rollback plan in case any issues arise that cannot be resolved. This can include creating backups of the database and system files, and having a plan in place for reverting any changes that were made during the migration.


To improve the process of migrating Dynamics CRM 365 Online to Dynamics CRM 365 On-Premise using a database backup, you might consider the following:

Obtain a current, complete database backup from Microsoft, as described in a previous. Make sure to download the backup file to a secure location and keep a copy for safekeeping.

Create a new Dynamics CRM 365 On-Premise environment, as described in earlier. This should include setting up the necessary servers, software, and network infrastructure.

Restore the database in the new environment using the backup file you obtained from Microsoft. This can typically be done using the SQL Server Management Studio.

Test the restored database to ensure that all data and functionality is working as expected. This may involve running tests and verifying data integrity.

Fix any issues that arise after the database restoration. This may include registering plugins and workflows again and changing the sandbox mode to "none."

Communicate with all relevant stakeholders throughout the migration process to ensure that everyone is aware of the progress and any potential issues that may arise.

Consider working with a partner or consulting firm that has experience with Dynamics CRM migrations, as they can provide valuable guidance and support throughout the process.

Make sure to follow best practices for data migration, including using the latest tools and technologies, properly testing and validating the data, and having a robust backup and recovery plan in place.

Sri Lanka .NET 
                Forum Member