Supported version and edition upgrades (SQL Server 2022)

Applies to: SQL Server (all supported versions) - Windows only

You can upgrade from SQL Server 2012 (11.x), SQL Server 2014 (12.x), SQL Server 2016 (13.x), SQL Server 2017 (14.x), and SQL Server 2019 (15.x). This article lists the supported upgrade paths from these SQL Server versions, and the supported edition upgrades for SQL Server 2022 (16.x).

Pre-upgrade checklist

  • Before upgrading from one edition of SQL Server 2022 (16.x) to another, verify that the functionality you're currently using is supported in the edition to which you're moving.
  • Verify supported hardware and software.
  • Before upgrading SQL Server, enable Windows Authentication for SQL Server Agent and verify the default configuration, that the SQL Server Agent service account is a member of the SQL Server sysadmin group.
  • To upgrade to SQL Server 2022 (16.x), you must be running a supported operating system. For more information, see Hardware and Software Requirements for Installing SQL Server.
  • Upgrade will be blocked if there's a pending restart.
  • Upgrade will be blocked if the Windows Installer service isn't running.

Unsupported scenarios

  • Cross-version instances of SQL Server 2022 (16.x) aren't supported. Version numbers of the Database Engine components must be the same in an instance of SQL Server 2022 (16.x).

  • SQL Server 2022 (16.x) is only available for 64-bit platforms. Cross-platform upgrade isn't supported. You can't upgrade a 32-bit instance of SQL Server to native 64-bit using SQL Server Setup. However, you can back up or detach databases from a 32-bit instance of SQL Server, and then restore or attach them to a new instance of SQL Server (64-bit) if the databases aren't published in replication. You must re-create any logins and other user objects in master, msdb, and model system databases.

  • You can't add new features during the upgrade of your existing instance of SQL Server. After you upgrade an instance of SQL Server to SQL Server 2022 (16.x), you can add features by using the SQL Server 2022 (16.x) Setup. For more information, see Add Features to an Instance of SQL Server (Setup).

Upgrades from earlier versions to SQL Server 2022 (16.x)

SQL Server 2022 (16.x) supports upgrade from the following versions of SQL Server:

  • SQL Server 2012 (11.x) SP4 or later
  • SQL Server 2014 (12.x) SP3 or later
  • SQL Server 2016 (13.x) SP3 or later
  • SQL Server 2017 (14.x)
  • SQL Server 2019 (15.x)

Specific version and edition upgrade paths aren't available during community technology preview releases.

Migrate to SQL Server 2022 (16.x)

You can migrate databases from older versions of SQL Server to SQL Server 2022 (16.x), as long as the source database compatibility level is 90 or higher. Databases with a compatibility level of 90 (for example, on SQL Server 2005 (9.x)), are automatically upgraded to a compatibility level of 100 when migrated to SQL Server 2022 (16.x). If the compatibility level on the source database is 100 or higher, it will be unchanged on SQL Server 2022 (16.x).

For information, see Azure Database Migration Guide.

The following tips and tools can help you plan and implement your migration.

  • Migration tools. Migration is supported through Data Migration Assistant (DMA).

  • Backup and restore. A backup taken on SQL Server 2008 and later, can be restored to SQL Server 2022 (16.x) without changing its compatibility level, as long as the database backup has a compatibility level of 100 or higher.

    Databases with a compatibility level of 90, including backups taken on SQL Server 2005 (9.x), are automatically upgraded to a compatibility level of 100 when restored to SQL Server 2022 (16.x).

  • Log shipping. Log shipping is supported if the primary is running SQL Server 2008 SP3 or later, or SQL Server 2008 R2 SP2 or later, and the secondary is running SQL Server 2022 (16.x).

    Warning

    If an automatic or manual failover happens and the SQL Server 2022 (16.x) instance becomes primary, SQL Server 2008 or SQL Server 2008 R2 instance becomes secondary and cannot receive changes from primary.

  • Bulk load: Tables can be bulk copied from SQL Server 2008 or SQL Server 2008 R2 to SQL Server 2022 (16.x).

See also

Next steps