title | description | author | ms.author | ms.date | ms.service | ms.subservice | ms.topic | ms.custom | ||
---|---|---|---|---|---|---|---|---|---|---|
Migrate Databases to SQL Server on Linux |
This article describes the different options for migrating databases and data to SQL Server on Linux. |
rwestMSFT |
randolphwest |
01/21/2025 |
sql |
linux |
upgrade-and-migration-article |
|
[!INCLUDE SQL Server - Linux]
You can migrate your databases and data to [!INCLUDE ssnoversion-md] running on Linux. The method you choose to use depends on the source data and your specific scenario. The following sections provide best practices for various migration scenarios.
Important
[!INCLUDE ssnoversion-md] cross-platform availability groups, which include heterogeneous replicas with complete high-availability and disaster recovery support, is available with DH2i DxEnterprise. For more information, see SQL Server Availability Groups with Mixed Operating Systems.
If you want to migrate [!INCLUDE ssnoversion-md] databases on Windows to [!INCLUDE ssnoversion-md] on Linux, the recommended technique is to use [!INCLUDE ssnoversion-md] backup and restore.
- Create a backup of the database on the Windows machine.
- Transfer the backup file to the target [!INCLUDE ssnoversion-md] Linux machine.
- Restore the backup on the Linux machine.
For a tutorial on migrating a database with backup and restore, see the following article:
It's also possible to export your database to a BACPAC file (a compressed file that contains your database schema and data). If you have a BACPAC file, you can transfer this file to your Linux machine, and then import it to [!INCLUDE ssnoversion-md]. For more information, see the following articles:
You can migrate databases on other database systems to [!INCLUDE ssnoversion-md] on Linux. This includes Microsoft Access, DB2, MySQL, Oracle, and Sybase databases. In this scenario, use the SQL Server Management Assistant (SSMA) to automate the migration to [!INCLUDE ssnoversion-md] on Linux. For more information, see Use SSMA to migrate databases to SQL Server on Linux.
There are also techniques for importing raw data. You might have structured data files that were exported from other databases or data sources. In this case, you can use the bcp tool to bulk insert the data. Or you can run SQL Server Integration Services (SSIS) on Windows to import the data into a [!INCLUDE ssnoversion-md] database on Linux. SSIS enables you to run more complex transformations on the data during the import.