ThingWorx High Availability > Microsoft SQL Server High Availability
Microsoft SQL Server High Availability
The ThingWorx Platform can be deployed with Microsoft SQL Server as the relational database. Microsoft SQL Server has two cluster modes to choose from: Failover Cluster and Always On. ThingWorx Platform can connect to either type of cluster when configured with the correct JDBC driver (downloaded from Microsoft) and connection options using the cluster’s virtual network name. Windows Server Failover Clustering functionality is used by the database cluster.
Always On is the latest, highest availability version of SQL Server cluster, in which two or more copies of the database are synchronized across multiple nodes. One of the copies is read/write, and the rest are read-only. Although all nodes are accessible using certain connect string options, currently ThingWorx only supports use of the read/write node for non-customized, production operations.
Failover Cluster is the base level cluster mode for SQL Server. This cluster consists of one active node and one or more passive nodes. Only the active node owns the database files on the shared drive or drives. The passive node or nodes are not accessible unless a failover event occurs, triggering transfer of ownership of the shared database files to the new active node.
In addition to the prerequisites and considerations listed in PTC Reference Document: Getting Started with MS SQL Server and ThingWorx guide, please note the following steps:
To connect ThingWorx Tomcat to a SQL Server cluster, download the correct JDBC driver version from Microsoft: https://docs.microsoft.com/en-us/sql/connect/jdbc/microsoft-jdbc-driver-for-sql-server-support-matrix?view=sql-server-2017&viewFallbackFrom=sql-server-2014.
The option “MultiSubnetFailover=Yes” must be used in the connection string along with the cluster’s virtual network name for the host in the ThingWorx platform-settings.json file “jdbcURL” parameter.
Reference Documentation
Azure SQL High Availability
Azure SQL Database has high availability built into the database engine and guarantees up and running time 99.99% of time. This is a fully managed SQL Server Database Engine process hosted in the Azure cloud that ensures your SQL Server database is always upgraded/patched without affecting your workload. Azure SQL Database can quickly recover even in the most critical circumstances ensuring that your data is always available.
Was this helpful?