In the first post of Path to One version we’ve covered data upgrade process for validation purposes. It is just about time to complete in-place upgrade and upgrade local business data. If you are still running D365 FO 7.2/7.3/8.1 make sure you read this announcement. In this post we’ll cover the in-place upgrade process for 7.3 application with customizations from within the VHD. Before you begin always check for the updated instructions on docs.microsoft.com. The process is described here.
What is needed:
- Single-box dev VM running on the target D365FO application version
- Access to source environment
- Time *depending on your target version you may need to run application update on your target environment (when your target version is not available as base deployment). In this case target application version was 10.0.15 which required 10.0.14 deployment 10.0.15 update custom package deployment. When planning the upgrade make a note of the current release schedule. Software lifecycle policy and on-premises releases - Finance & Operations | Dynamics 365 | Microsoft Docs not every topology is being published to LCS and if you have heavy testing you may run into the situation when your target version is close to the expiration date so you may need another application update to keep it current.
Step by step:
- Shut-down on-premises AOS, BI, and MR servers or stop the Service Fabric Host Service in each of the nodes and set to disabled on target environment.
- Back up your database from your on-premises environment (typically AXDB). For more information, see Create a Full Database Backup.
- In the VHD, go to C:\AOSService\PackagesLocalDirectory\Bin\CustomDeployablePackage and copy the MinorVersionDataUpgrade zip file.
- Paste the file wherever you want and unzip it. For example: c:\AXUpgrade\
- Open a Command Prompt as Administrator and change the directory to the unzipped folder in step 4.
- Restore the backup that you created into the OneBox VM. For more information, see Restore a Database Backup Using SSMS.
- Using the Command Prompt from step 5, execute the following commands:
AxUpdateInstaller.exe generate -runbookid=upgrade -runbookfile=upgrade.xml -topologyfile=defaulttopologydata.xml -servicemodelfile=defaultservicemodeldata.xml
AxUpdateInstaller.exe import -runbookfile=upgrade.xml
AxUpdateInstaller.exe execute -runbookid=upgrade
- If you had errors during runbook execution – rerun the step:
AxUpdateInstaller.exe execute -runbookid=upgrade -rerunstep=failedstepnumber
- When the upgrade process has finished successfully, back up the newly upgraded database. If you have customizations from ISVs or VARs, check if you have to run some post data upgrade scripts.
- Restore the database into your target environment with a different name from the production one (for example, AXDBupgraded).
- Start on-premises AOS, BI, and MR servers, or start the services from the Service Fabric portal.
- In LCS, open the project, and then, in the Environments section, delete the deployment. The applications should start to disappear from Service Fabric Explorer in the environment in a few minutes. This process may take longer depending on the number of nodes that you have. Check the service fabric explorer to verify that all applications have been deleted before deploying a new environment. Note that LCS might indicate that the environment is deleted before the actual process is finished.
Check your ServiceFabric/Local agent versions and update your cluster/Local agent to supporter version if needed.
- Since there were customizations:
In LCS, go to the Shared Assets Library.
Under Select asset type, choose Model and download: Dynamics 365 for Finance and Operations on-premises, Version 10.0.x Demo Data. Select the version closest to the 10.0.x environment that you will deploy as the on-premises baseline.
- Use this file to create a new database (typically AXDB) using the restore backup option from SQL server. For more information, see Restore a Database Backup Using SSMS.
- The database will need to be configured. Follow the steps in Configure the Finance and Operations database.
- Copy the infrastructure folder to primary sql node. Update AXDB location and/or file name
- If initialize-database script fails, check your DB users and role (https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/deployment/setup-deploy-on-premises-pu12#configure-the-finance--operations-database) , map axdbadmin account to your new AXDB (baseline database downloaded from LCS) with db_owner role if needed.
- In LCS, set up a new environment and deploy it with version 10.0.x . For more information, see Set up and deploy on-premises environments (Platform update 12 and later). When you deploy, the database that you specify should be the one created from demo data (typically AXDB).
- Once deployment is complete you can proceed with applying service updates for your target version. (10.0.15 in this example)
- Once deployment is complete you can apply your own customizations as well as ISV/VAR modules to your newly created 10.0.x environment. Otherwise, when the environment initially syncs with the database it will delete any customization or extensions related data.
- Shut-down on-premises AOS, BI, and MR servers, or stop the services from the Service Fabric portal.
- Rename or delete the demo database (typically AXDB) used in the deployment and then rename your new database (typically AXDBupgraded) to the name that the demo database had (typically AXDB).
(AXDB_USMF is the demo database. AXDBUpgraded renamed to AXDB)
- Start on-premises AOS, BI, and MR servers, or start the services from the Service Fabric portal. When AOS nodes are started the system will run dbsync. Once dbsync and rdl deployment is complete - your environment is ready for operations
Important: when planning the upgrade you’ll need to calculate the downtime of your on-premises environment. Keep in mind that the environment will be unavailable for the entire process. LCS deployments take about 3-5 hours, Service updates may take a little longer.
Happy upgrades :)

Like
Report
*This post is locked for comments