Skip to content
Guide · Migrate between databases

SQL Server Migration Assistant (SSMA): Complete Guide

SQL Server Migration Assistant (SSMA) is Microsoft's free Windows tool for moving Oracle, MySQL, Access, Db2 and SAP ASE databases to SQL Server, Azure SQL Database and Azure SQL Managed Instance. It assesses the source, converts the schema and code, loads it into the target and copies the data. This guide covers the editions, installation, the migration steps Microsoft documents, the limits, and how SSMA relates to the retired Data Migration Assistant and Azure Database Migration Service.

Steps checked 8 October 2026 against the official documentation for each product. Versions covered: SSMA 10.6 (released 1 September 2026) for Access, MySQL and Oracle; targets SQL Server 2019, 2022 and 2025, Azure SQL Database, Azure SQL Managed Instance. Next review due April 2027. Installers, versions and download pages change; follow the official page if a step differs.
Short answer
  • SSMA is free and comes in five separate editions, one per source: Access, Db2, MySQL, Oracle and SAP ASE (Sybase). There is no SSMA for PostgreSQL as a source.
  • Microsoft lists SQL Server 2019, 2022 and 2025 (Windows and Linux), Azure SQL Database and Azure SQL Managed Instance as supported targets.
  • The workflow is the same in every edition: create a project, connect to source and target, map schemas, run an assessment report, convert, load the objects (or save a script), then migrate the data.
  • SSMA copies data in one pass; it does not keep the target in sync with ongoing changes, so plan a cutover window or pair it with a replication tool.
  • Data Migration Assistant (DMA), the separate SQL Server-to-Azure assessment tool, was retired on 16 July 2025; Azure Database Migration Service and other Azure tools cover that job now.
How we know: Research-based: editions, versions, prerequisites and steps were checked against Microsoft Learn (SSMA, Data Migration Assistant and Azure Database Migration Service pages) and the SSMA pages on the Microsoft Download Center on 8 October 2026. We have not installed SSMA or run a migration for this guide; labels are as Microsoft documents them and can change between releases.

What is SQL Server Migration Assistant?

SQL Server Migration Assistant (SSMA) automates migration to SQL Server, Azure SQL Database and Azure SQL Managed Instance from Microsoft Access, Db2, MySQL, Oracle and SAP ASE. Microsoft describes it as a free, supported tool. Each edition contains a Windows client that does the assessment, conversion and data copy, and, for the Oracle and MySQL editions, an extension pack installed on the target SQL Server that emulates source-engine features SQL Server lacks and supports server-side data migration.

SSMA moves you onto the Microsoft platform. If you are leaving SQL Server for PostgreSQL, see the SQL Server to PostgreSQL migration guide instead; for the full process and other tools, see the database migration guide.

SSMA editions (Download Center details, version 10.6)
EditionSource versions (as stated by Microsoft)Extension packNotes
SQL Server Migration Assistant for OracleOracle 12.0 or laterYes, on the target SQL ServerOracle SYS and SYSTEM schemas cannot be migrated
SQL Server Migration Assistant for MySQLMySQL 4.1 and higherYes, on the target SQL ServerNeeds the MySQL ODBC driver on the SSMA computer; information_schema and mysql schemas are not migrated
SQL Server Migration Assistant for AccessAccess 97 and higherNoNeeds the DAO provider; databases with workgroup protection must have it removed first
SQL Server Migration Assistant for Db2See the Download Center pageSee the edition's documentationNot covered in detail here
SQL Server Migration Assistant for SAP ASE (Sybase)See the Download Center pageSee the edition's documentationNot covered in detail here

Download and install SSMA

Download each edition from Microsoft only, through the links on the SSMA overview page (they lead to the Microsoft Download Center). The Access, MySQL and Oracle pages list version 10.6, published on 1 September 2026, with separate x86 installers alongside the main ones; the MySQL and Oracle downloads also include the extension pack installer.

For SSMA for Access, Microsoft lists these prerequisites: Windows 11 or Windows Server 2022 or later, .NET Framework 4.7.2 or later, the Microsoft DAO provider version 12.0 or 14.0, sufficient permissions on the target SQL Server, and 4 GB of RAM recommended. The documented installation is short:

  1. Uninstall any earlier version of the same SSMA edition (upgrades are uninstall then install).
  2. Double-click SSMAforAccess_<n>.msi (or the MySQL or Oracle installer) and select Next on the Welcome page.
  3. Accept the licence agreement, choose the Typical setup type, decide on data collection and update checks, and select Install.
  4. For Oracle and MySQL, install the extension pack on the computer that runs the target SQL Server.
  5. For MySQL, install the MySQL ODBC driver on the computer running the SSMA client.

The target needs to exist first. For a local test target, see the related guides on installing SQL Server, SQL Server Express and SQL Server in Docker, and the SSMS review for the tool you will use to check the result.

Migration walkthrough: SSMA for MySQL to SQL Server

Microsoft's recommended process for MySQL is below; the Oracle edition uses the same steps with Oracle schemas in place of MySQL databases. Menu and button names are those in Microsoft's documentation.

  1. Create a project. In the new project dialog, choose the target in the Migrate to list (SQL Server or Azure SQL Database). Set project options such as conversion, migration and type mapping before converting.
  2. Connect to MySQL. The source schemas appear in MySQL Metadata Explorer.
  3. Connect to SQL Server (or Azure SQL Database). The target databases appear in the SQL Server Metadata Explorer.
  4. Map MySQL databases to SQL Server schemas.
  5. Optionally, select objects and choose Create Report to assess the conversion and estimate effort.
  6. Choose Convert Schema. Converted objects appear in the target explorer; errors and warnings appear in the Error List pane.
  7. Load the objects: synchronise the converted objects with the target, or save a script and run it yourself.
  8. Back in MySQL Metadata Explorer, select the tables and choose Migrate Data.
  9. Update the applications to point at SQL Server where necessary.

In the metadata panes you can change type mappings, character set mapping and SQL modes for MySQL objects; Microsoft notes that these changes must be made before you convert. Changes in either explorer alter the SSMA project, not the source or target database, until you synchronise.

SSMA for Oracle and SSMA for Access: what differs

SQL Server Migration Assistant for Oracle

The Oracle edition targets SQL Server, Azure SQL Database, Azure SQL Managed Instance and, according to its migration page, Azure Synapse Analytics. Its extension pack emulates Oracle features not native to SQL Server and adds a tester database for SSMA's testing features, available from the Tester menu. Review everything the assessment report flags before you load the converted objects. Microsoft also publishes a separate migration guide for Oracle to Azure SQL Managed Instance.

SQL Server Migration Assistant for Access

Access databases are added to the project as files. After converting, you can load the objects and migrate data in one step with Convert, Load, and Migrate, or use the Migration Wizard. Before you start, Microsoft advises upgrading pre-Access 97 files, removing workgroup protection, backing up both the Access files and the target database, and checking the list of incompatible Access features. Afterwards, the Access front end can keep working through linked tables that point at SQL Server.

Limits and common problems

  • No change data capture. Microsoft documents the SSMA data migration as a run you start from the Migrate Data command, not as ongoing replication, so writes made to the source afterwards are not copied. Freeze writes during the final run, or use a replication tool for low-downtime moves.
  • Windows only. The client runs on Windows, although the target may be SQL Server on Linux.
  • Code still needs review. The assessment report lists objects that do not convert automatically; budget time for procedures, triggers and dynamic SQL.
  • System schemas are skipped: SYS and SYSTEM for Oracle, information_schema and mysql for MySQL.
  • Upgrades require uninstalling the client and extension pack first; older projects may be converted to the new format when opened.

When you load data into SQL Server, the errors you are most likely to meet are documented in our error library: 8152 (string or binary data would be truncated) when a column is narrower than the source data, 2627 for duplicate keys, 547 for foreign key conflicts, and 18456 or 4060 when the SSMA login cannot connect or open the target database.

Data Migration Assistant, Azure and SSMA

Microsoft Data Migration Assistant (DMA) was a separate tool for assessing SQL Server upgrades and moves to Azure SQL. Microsoft retired it on 16 July 2025 and points to its SQL Server to Azure SQL migration overview instead. DMA never converted other engines; that has always been SSMA's job.

For SQL Server to Azure, the current managed service is Azure Database Migration Service, available through the Azure portal, PowerShell and the Azure CLI, with offline migrations to Azure SQL Database and online or offline migrations to Azure SQL Managed Instance and SQL Server on Azure VMs. For Oracle, MySQL, Access, Db2 or SAP ASE into Azure SQL, SSMA remains the tool: choose Azure SQL Database in the Migrate to list. The AWS counterpart for moves into AWS is covered in the AWS DMS guide.

SSMA compared with related Microsoft and AWS tools
ToolMovesConverts schema between enginesOngoing replicationStatus
SSMAOracle, MySQL, Access, Db2, SAP ASE to SQL Server and Azure SQLYesNoCurrent (10.6)
Data Migration AssistantSQL Server to newer SQL Server or Azure SQL (assessment)NoNoRetired 16 July 2025
Azure Database Migration ServiceSQL Server to Azure SQL Database, Managed Instance, Azure VMsNoOnline mode for Managed Instance and Azure VMsCurrent
AWS DMS with DMS Schema ConversionMany engines into and within AWSYesYes (CDC)Current

Frequently asked questions

Is SQL Server Migration Assistant free?

Yes. Microsoft describes SSMA as a free, supported tool, and each edition downloads from the Microsoft Download Center. You still need a licensed SQL Server target (or the free Express or Developer editions for testing) or an Azure SQL subscription.

What is SQL Server Migration Assistant for Oracle?

It is the SSMA edition that converts Oracle schemas and code to T-SQL and copies the data into SQL Server, Azure SQL Database or Azure SQL Managed Instance. Version 10.6 supports Oracle 12.0 or later as the source, according to its download page.

Can SSMA migrate Microsoft Access to SQL Server?

Yes. SSMA for Access supports Access 97 and later, converts tables and queries, migrates the data and can link the Access front end to the new SQL Server tables so existing forms and reports keep working.

What replaced Microsoft Data Migration Assistant?

DMA was retired on 16 July 2025. Microsoft's documentation directs SQL Server to Azure SQL migrations to its migration overview and to Azure Database Migration Service.

Can SSMA migrate to Azure SQL Database?

Yes. Azure SQL Database and Azure SQL Managed Instance are supported targets; choose Azure SQL Database in the Migrate to list when you create the project.

Does SSMA support PostgreSQL?

No. The SSMA editions cover Access, Db2, MySQL, Oracle and SAP ASE as sources, and SQL Server or Azure SQL as targets. To move PostgreSQL to SQL Server, or SQL Server to PostgreSQL, use other tools.

Sources

Checked 8 October 2026.

How we research guides: our editorial method. We link only to official downloads and never host installers.

Database installed?

Write your first queries with the free beginner course, then practise on real problems.