- 5 minutes to read

About using Microsoft SQL Server with Nodinite

On this page, you will learn about some important prerequisites and options for installing and using Nodinite with Microsoft SQL Server.

SQL Server Versions and Editions

Any of the following Enterprise and Standard SQL Server versions can be used with Nodinite up to the specified version.

  • SQL Express is supported
  • Azure SQL Databases are currently NOT supported
SQL Server Version Always On support Cluster support Stand alone
2022 ->6
2019 ->6
2017 ->6
2016 ->6
2014 ->6
2012 ->6
2008 R2 ->5.4

Developers can use the Developer edition

If you have the need for Logging, then you will most probably always need the Enterprise or Standard edition.

Enterprise Standard Express
Maximum Database Size 524 PB 524 PB 10 GB
CPUs/Cores OS Max 4 sockets or 24 cores 1 socket or 4 cores
Max Memory OS Max 128 GB 1.4 GB
SQL Profiler

SQL Server Always On

There is a specific user guide for Microsoft SQL Server Always on and Nodinite. If this is how you intend to host Nodinite, please make sure to read it very carefully .

SQL Express

SQL Express has some limitations and is generally not recommended if you have the need for Logging. If you intend to use Nodinite only for documentation and Monitoring then you can most probably get away with the SQL Server Express edition.

SQL Server Version Always On support Cluster support Stand alone Nodinite Version
2022 -> 6
2019 -> 6
2017 -> 6
2016 -> 6
2014 -> 6
2012 -> 6
2008 R2 ->5.4
The 10 GB limit for SQL Express makes it a bad candidate for logging
SQL Express 2019 and later can be "upgraded" to a standard edition. This means you can often start cheap and expand with your business needs

Installation Path

If Nodinite is not installed on the same Windows Server as SQL Server, then you can install SQL Server in any folder. However, if you have multiple Nodinite application servers you need to be aware that Nodinite uses some System Parameters. Please review the SqlPackageExecutable user guide for an example.

Security

Next you will find some details regarding security options for your SQL Server environment.

Account for SQL Server Instance

Generally, it is a good idea to run the SQL Server instance with an AD service account (and not a local account). By doing so the SPN should be properly registered in the Active Directory which is also required in order for Kerberos to be fully operational, that in turn, is also a requirement Trusted for delegation

Kerberos

Kerberos is enforced by Windows and often becomes a problem when services traverse multiple servers across the network. The following features must all be properly configured:

Trusted for delegation

This topic is detailed in the Trusted for delegation user guide.

SPN

When Nodinite uses a Linked Server, the SQL Server instance(s) must have its Service Principal Name (SPN) properly registered. Review the Account for SQL Server Instance paragraph for additional information.

Linked Server

Review the Linked Servers section

DTC

Review the MSDTC user guide

The type of DTC configuration, vary with the type of configuration for SQL Server and the policies of your organization.

Performance optimizations

To maximize your experience with Nodinite you should implement all suggestions below:

  • Nodinite should run in dedicated SQL instances to guarantee/dedicate HW resources and avoid competing demands for resources, aid in the troubleshooting and avoid blame game situations
    • Assign dedicated disk volumes for the Log Database, to make sure extended logging does not fault any other system/service
  • Keep the Logging Service close to the SQL Server instances hosting the Nodinite Log Database

Repeat the optimizations below on ALL SQL Server instances (Log Database, BizTalk Server Databases)

  • Use -T1118 Trace flag on SQL Instances (<2016) - Optimizes TEMPDB
  • Disable PAC Verification if your policy allows for this option to be set on all Windows Servers running any of Nodinite Core Services - Less RPC calls, improves performance
  • Nodinite should be installed on machines with dedicated Windows swap volumes (>2,5*physical RAM) and SQL discs should have > 300 MB/S R/W.
  • There should be a secured backup volume (or network share) available with sufficient free space for Nodinite databases
  • Windows Servers hosting any of the Core Services should have at least 16GB RAM. Environments with a large number of messages logged and processed may need additional RAM
  • The Nodinite Log Databases, when used together with BizTalk Server, the Simple recovery mode option can be used to increase the general performance

TempDB optimization

  • For each core assigned with your SQL Instance (up to 8), create 1 tempdb file with at least 128 MB in size (no auto growth)

    For example, if you have 14 cores, this means that you should have 8 tempdb files. Putting the tempdb files on different volumes may increase the overall performance of your system

Backups

  • DO NOT LOSE ANY DATA, AND/OR YOUR VALUABLE CONFIGURATION (!)

    Make sure to backup all your Nodinite databases, and make sure the documentation for the restore operation is available to the appropriate stakeholders