Upgrading from SQL Server 2012 SP1 to SQL Server 2019

This handy page from Microsoft should be very useful for you as it explains in detail how to carry out a migration and the tools and methods available: Supported Version and Edition Upgrades for SQL Server 2019

Use the Data Migration Assistant (DMA) to scan your databases to make sure they can be migrated to the 2019 server. It will highlight any potential blocking issues such as deprecated features that you may need to resolve before you can migrate.

It looks like you will still need to upgrade your SQL Server 2012 to SP4 to be fully supported though.


We normally just ...

  1. Perform a simple SQL Server Database Backup on the old SQL Server instance (or with Transact-SQL command BACKUP)
  2. Copy the database backup (*.BAK file) to the new SQL Server instance
  3. Restore the database using either SQL Server Management Studio (SSMS) or using the Transact-SQL command RESTORE DATABASE ....

During the restore of the database on the new instance it is automatically converted into the newer database version.

If you restore a SQL Server 2005 (9.x) or higher database to SQL Server 2019 (15.x), the database is automatically upgraded. Typically, the database becomes available immediately. However, if a SQL Server 2005 (9.x) database has full-text indexes, the upgrade process either imports, resets, or rebuilds them, depending on the setting of the upgrade_option server property. If the upgrade option is set to import (upgrade_option = 2) or rebuild (upgrade_option = 0), the full-text indexes will be unavailable during the upgrade. Depending the amount of data being indexed, importing can take several hours, and rebuilding can take up to ten times longer. Note also that when the upgrade option is set to import, the associated full-text indexes are rebuilt if a full-text catalog is not available. To change the setting of the upgrade_option server property, use sp_fulltext_service.

Reference: Restore a Database to a New Location (SQL Server) (Microsoft | SQL Docs)

Important

Don't forget to create scripts for the SQL Server Logins, which can then be used to re-create them on the new instance. Visit the article How to transfer logins and passwords between instances of SQL Server (Microsoft Support) to see how this can be achieved.