This guide describes how to safely and efficiently migrate an on-premises TimeXtender Classic application server and database platforms to Azure. After completing this guide, the TimeXtender Classic application and services will be installed on a cloud-based Virtual Machine. The project repository and target SQL databases will be housed in an Azure PaaS database. For performance reasons, it is highly recommended your cloud databases are deployed in the same region as the cloud-based application server.

We strongly recommend that you use the Azure Marketplace apps for deploying TimeXtender Classic to Azure. These plans include the TimeXtender Classic Application Server for Azure, and it is deployed in a Virtual Machine on Azure that has been pre-configured to best support TimeXtender Classic.
How to move from one server to the other
To move from one server to the other, use Microsoft’s Data Migration Assistant (DMA) or Data Migration Service (DMS) to migrate databases, schemas of databases, data and users, server roles, and SQL Server and Windows Logins. This is the best way to help you upgrade to your modern data platform because it is designed to enable seamless migrations to Azure data platforms with minimal downtime. It will also detect any compatibility issues that can impact database functionality.
When migrating the TimeXtender Classic application server and services, one of the most important pieces is to migrate the TimeXtender Classic project repository database that contains all of metadata for your TimeXtender Classic projects.
If you run into any issues with access or rights for users or service accounts on the new server, refer to the required Accounts and Permissions section at the bottom of this article.
1. Create databases in Azure
In order to map your databases on your source server to the target server for migration, you must first create empty databases for them on Azure.
- Using TimeXtender Classic on your source server, adjust the connections so your target databases (e.g. MDW) point to your SQL Server on Azure.
- Click Create to have the database(s) created in Azure.
- Adjust the connection of your project repository so it points to your SQL Server on Azure.
-
Click Create to have the project repository created in Azure and click OK to close the dialogue box.
-
When asked Do you want to save these changes before your project repository changes? Select Yes.
-
When asked Do you want to copy your current project to the new project repository? Select No.
2. Deploy Your Project
Changing your server and database(s) will trigger a deployment., and TimeXtender Classic will need to redeploy the raw and valid tables for those without incremental loads or history after changing the connection string.
3. Migrate SQL Server Resources using DMA/DMS
- The next step is to migrate your project repository and target databases (e.g. DSA, MDW) to your Azure data platform using Microsoft’s recommended approach depending on your target server type. It is also recommended to migrate the schemas, data and users, server roles, and SQL Server and Windows logins associated with these databases.
- Azure SQL Database: Use Data Migration Assistant to move your project repository and target databases (e.g. DSA, and/or MDW) to your target server
- Azure SQL Database managed instance: Use Data Migration Service to move your project repository and target databases (e.g. DSA, and/or MDW) to your target server.
- After you have successfully migrated databases, data and users, server roles, and SQL Server and Windows Logins associated with these databases, you need to start TimeXtender Classic on the Virtual Machine on Azure.
- When you start TimeXtender Classic for the first time you must enter in your license key and point it to the project repository in Azure.
- When you open a project, edit the other target databases in your project to point to the new databases on Azure.
- Ensure the user account has the proper permissions on both the repository database and the target databases as described below
4. Azure Analysis Services (if applicable)
- If you have existing Analysis Services Tabular Endpoints in TimeXtender Classic, edit the endpoint and point it towards your new server.
- You can use the service account but only if it has rights on the Azure Analysis services server.
- The Windows user that you use has to be added on the Analysis Services Admins.
- If you are connecting to on-premises data sources, you will need to configure an on-premises data gateway to provide secure data transfer between on-premises data sources and your Azure Analysis Services servers in the cloud. Install and Configure On-Premises Data Gateway
- If you are using Azure Analysis Services with Azure SQL Database Managed Instance, you must update your AAS configuration to work with Azure SQL Database Managed Instance. Azure Analysis Services integration with VNets via On-Premises Data Gateway
- If you have existing reports and dashboards in PowerBI that are connected to an on-prem SSAS Tabular Model, you can easily modify your Data source settings to point to your new Azure Analysis Server. This way you don’t have to rebuild all of your reports and dashboards.
5. Run the Connection Manager
Run the wizard in the connection manager to make sure all of your target databases have been updated, and then test your connections to make sure they are connected.
6. Update multiple environment settings (if applicable)
- After you have completed the first steps, you need to log into TimeXtender Classic as the server services user
- Point it to the other repository on the new server
- Open Windows Service Setup
- Start the Server Service as that user account and close the program
- Open the program as the first user and open Environment Properties
- You should be able to see all environments and global databases
- Deploy and execute all projects
Additional Information
Accounts and Permissions
Ensure the users, user groups, and service accounts have the same access and rights to the new server. Below are the access and rights required.
User Accounts
Identify and/or create the following user accounts. Azure Active Directory (AAD), is recommended if using the Hybrid or Cloud configurations but the permissions are the same for local Active Directory (AD). If utilizing Azure Analysis Services then Azure Active Directory is required.
- One user account for each TimeXtender Classic developer.
- One Service Account must be created for each non-development environment. These will be used to run the TimeXtender Classic Multiple Environment and Scheduler Services.
Security Group
Create an Active Directory (AD) Security Group called TXDevelopers and add the developer user accounts. This will make it easier to apply permissions as developers work on and off the project.
Application Server
Local or Domain Administrator on the Application Server. This is required to be able to start and stop services.
Database Permissions
- Azure SQL Database permissions
- Data sources: db_datareader
- Target databases: Server admin, Azure Active Directory admin or dbmanager role in the master database. If hosting the project repository in Azure SQL DB then a SQL account is required. If using contained database users, then use the db_owner role.
- Azure SQL Database Managed Instance permissions
- Data Sources: db_datareader
- Target databases: sysadmin or dbOwner. Note that if using dbOwner instead of sysadmin, a user account with at least dbCreator rights must log in and create the project repository database from within the project repository settings dialog.
- Azure Analysis Services
- Analysis Services Admin permissions based from an Azure Active Directory login.
There are alternative methods for moving the application server. You can view other methods here.