Supported SQL Server versions for Configuration Manager

Applies to: Configuration Manager (current branch)

Each Configuration Manager site requires a supported SQL Server version and configuration to host the site database.

SQL Server instances and locations

Central administration site and primary sites

The site database must use a full installation of SQL Server.

SQL Server can be located on:

  • The site server computer.
  • A computer that is remote from the site server.

The following instances are supported:

Secondary sites

The site database can use the default instance of a full installation of SQL Server or SQL Server Express.

SQL Server must be located on the site server computer.

Important

Upgrade SQL 2012 or 2014 Express, Standard, Enterprise edition to SQl 2016 or latest version. VC++ need to be upgraded to latest version on Secondary site Download Latest Microsoft Visual C++ Redistributable Version.

Limitations to support

The following configurations aren't supported:

  • A failover cluster instance in a Network Load Balancing (NLB) cluster configuration

  • A failover cluster instance on a Cluster Shared Volume (CSV)

  • SQL Server database mirroring technology, and peer-to-peer replication

SQL Server transactional replication is supported only for replicating objects to management points that are configured to use database replicas.

Supported versions of SQL Server

In a hierarchy with multiple sites, different sites can use different versions of SQL Server to host the site database. So long as the following items are true:

  • Configuration Manager supports the versions of SQL Server that you use.
  • The SQL Server versions you use remain in support by Microsoft.
  • SQL Server supports replication between the two versions of SQL Server. For more information, see SQL Server replication backward compatibility.

For SQL Server 2016 and prior, support for each SQL Server version and service pack follows the Microsoft Lifecycle Policy. Support for a specific SQL Server service pack includes cumulative updates unless they break backward compatibility to the base service pack version. Starting with SQL Server 2017, service packs won't be released since it follows a modern servicing model. The SQL Server team recommends ongoing, proactive installation of cumulative updates as they become available.

Unless specified otherwise, the following versions of SQL Server are supported with all active versions of Configuration Manager. If support for a new SQL Server version is added, the Configuration Manager version that adds that support is noted. Similarly, if support is deprecated, look for details about affected versions of Configuration Manager.

Important

When you use SQL Server Standard for the database at the central administration site, you limit the total number of clients that a hierarchy can support. See Size and scale numbers.

SQL Server 2022: Standard, Enterprise

Starting with current branch 2303, support is added for SQL server 2022 with Compatibility Level/Cardinality Estimation set to 150 on the Configuration Manager database. SQL 2022 native (160) is not currently supported.

You can use this version of SQL Server for the following sites:

  • A central administration site
  • A primary site
  • A secondary site

SQL Server 2019: Standard, Enterprise

You can use this version with cumulative update 5 (CU5) or later, as long as your cumulative update version is supported by the SQL Server lifecycle. CU5 is the minimum requirement for SQL Server 2019 as it resolves an issue with scalar UDF inlining.

You can use this version of SQL Server for the following sites:

  • A central administration site
  • A primary site
  • A secondary site

SQL Server 2017: Standard, Enterprise

You can use this version with cumulative update version 2 or higher, as long as your cumulative update version is supported by the SQL Server lifecycle. You can use this version of SQL Server for the following sites:

  • A central administration site
  • A primary site
  • A secondary site

SQL Server 2016: Standard, Enterprise

You can use this version with the minimum service pack and cumulative update supported by the SQL Server lifecycle. You can use this version of SQL Server for the following sites:

  • A central administration site
  • A primary site
  • A secondary site

Important

Starting in version 2409, support for SQL Server 2014 is deprecated. Its support lifecycle ends in July 2024. Plan to upgrade all database servers before that time. For more information, see SQL Server.

SQL Server 2017 Express

You can use this version with cumulative update version 2 or higher, as long as your cumulative update version is supported by the SQL Server lifecycle. You can use this version of SQL Server for the following sites:

  • A secondary site

SQL Server 2016 Express

You can use this version with the minimum service pack and cumulative update supported by the SQL Server lifecycle. You can use this version of SQL Server for the following sites:

  • A secondary site

Important

Starting in version 2409, support for SQL Server 2014 is deprecated. Its support lifecycle ends in July 2024. Plan to upgrade all database servers before that time. For more information, see SQL Server.

Required configurations for SQL Server

The following configurations are required by all installations of SQL Server that you use for a site database, including SQL Server Express. When Configuration Manager installs SQL Server Express as part of a secondary site installation, it automatically creates these configurations.

SQL Server architecture version

Configuration Manager requires a 64-bit version of SQL Server to host the site database.

Database collation

At each site, both the instance of SQL Server that's used for the site and the site database must use the following collation: SQL_Latin1_General_CP1_CI_AS.

Configuration Manager supports two exceptions to this collation for the China GB18030 standard. For more information, see International support.

Database compatibility level

Configuration Manager requires that the compatibility level for the site database is no less than the lowest supported SQL Server version for your Configuration Manager version.

When you upgrade a site database from an earlier version of SQL Server, the database keeps its existing cardinality estimation level, if it's at the minimum allowed for that instance of SQL Server. When you upgrade SQL Server with a database at a compatibility level lower than the allowed level, it automatically sets the database to the lowest compatibility level allowed by SQL Server.

The following table identifies the recommended compatibility levels for Configuration Manager site databases:

SQL Server version Supported compatibility levels Recommended level
SQL Server 2022 150, 140, 130, 120, 110 150
SQL Server 2019 150, 140, 130, 120, 110 150
SQL Server 2017 140, 130, 120, 110 140
SQL Server 2016 130, 120, 110 130

To identify the SQL Server cardinality estimation compatibility level in use for your site database, run the following SQL query on the site database server:

SELECT name, compatibility_level FROM sys.databases

For more information on SQL Server compatibility levels and how to set them, see ALTER DATABASE Compatibility Level (Transact-SQL).

SQL Server features

Only the Database Engine Services feature is required for each site server.

Configuration Manager database replication doesn't require the SQL Server replication feature. However, this SQL Server configuration is required when you use database replicas for management points.

Windows authentication

Configuration Manager requires Windows authentication to validate connections to the database.

SQL Server instance

Use a dedicated instance of SQL Server for each site. The instance can be a named instance or the default instance.

SQL Server memory

Reserve memory for SQL Server by using SQL Server Management Studio. Set the Minimum server memory setting under Server Memory Options. For more information about how to configure this setting, see SQL Server memory server configuration options.

  • For a database server that you install on the same computer as the site server: Limit the memory for SQL Server to 50 to 80 percent of the available addressable system memory.

  • For a dedicated database server that's remote from the site server: Limit the memory for SQL Server to 80 to 90 percent of the available addressable system memory.

  • For a memory reserve for the buffer pool of each SQL Server instance in use:

    • For a central administration site: Set a minimum of 8 GB.
    • For a primary site: Set a minimum of 8 GB.
    • For a secondary site: Set a minimum of 4 GB.

SQL Server nested triggers

SQL Server nested triggers must be enabled. For more information, see Configure the nested triggers server configuration option

SQL Server CLR integration

The site database requires SQL Server common language runtime (CLR) to be enabled. This option is enabled automatically when Configuration Manager installs. For more information about CLR, see Introduction to SQL Server CLR Integration.

SQL Server Service Broker (SSB)

The SQL Server Service Broker is required both for intersite replication as well as for a single primary site.

TRUSTWORTHY setting

Configuration Manager automatically enables the SQL TRUSTWORTHY database property. This property is required by Configuration Manager to be ON.

Optional configurations for SQL Server

The following configurations are optional for each database that uses a full SQL Server installation.

SQL Server service

You can configure the SQL Server service to run using:

  • A low rights domain user account:

    • This configuration is a best practice and might require you to manually register the service principal name (SPN) for the account.
  • The local system account of the computer that runs SQL Server:

    • Use the local system account to simplify the configuration process.
    • When you use the local system account, Configuration Manager automatically registers the SPN for the SQL Server service.
    • Using the local system account for the SQL Server service isn't a SQL Server best practice.

When the computer running SQL Server doesn't use its local system account to run the SQL Server service, configure the SPN of the account that runs the SQL Server service in Active Directory Domain Services. (When the system account is used, the SPN is automatically registered for you.)

For information about SPNs for the site database, see Manage the SPN for the site database server.

For information about how to change the account that is used by the SQL Server service, see SCM Services - Change the service startup account.

SQL Server Reporting Services

SQL Server Reporting Services is required for installing a reporting services point that lets you run reports. Configuration Manager supports the same versions of SQL Server for reporting as it does for the site database.

For more information, see Prerequisites for reporting in Configuration Manager.

Important

After you upgrade SQL Server from a previous version, you might see the following error: Report Builder Does Not Exist.
To resolve this error, you must reinstall the reporting services point site system role.

Data warehouse service point

The data warehouse uses a separate database. You can host it on the site database server, or a separate SQL Server. For more information, see The data warehouse service point for Configuration Manager.

SQL Server ports

For communication to the SQL Server database engine and for intersite replication, you can use the default SQL Server port configurations or specify custom ports:

  • Intersite communications use the SQL Server Service Broker, which uses port TCP 4022 by default.

  • Intrasite communications between the SQL Server database engine and various Configuration Manager site system roles use port TCP 1433 by default. The following site system roles communicate directly with the SQL Server database:

    • Management point
    • SMS Provider computer
    • Reporting services point
    • Site server

When a computer running SQL Server hosts a database from more than one site, each database must use a separate instance of SQL Server. Also, each instance must be configured to use a unique set of ports.

Warning

Configuration Manager doesn't support dynamic ports. Because SQL Server named instances by default use dynamic ports for connections to the database engine, when you use a named instance, you must manually configure the static port that you want to use for intrasite communication.

If you have a firewall enabled on the computer that is running SQL Server, make sure that it's configured to allow the ports that are being used by your deployment and at any locations on the network between computers that communicate with the SQL Server.

For an example of how to configure SQL Server to use a specific port, see Configure a server to listen on a specific TCP port.

Upgrade options for SQL Server

If you need to upgrade your version of SQL Server, use one of the following methods, from easy to more complex: