AWS Database Migration Service features

Overview

AWS Database Migration Service (AWS DMS) helps you migrate databases to AWS quickly and securely. AWS DMS offers you the ability to plan, assess, convert, and migrate databases and analytics systems at scale under one central service, saving time, resources, and costs. The source database remains fully operational during the migration, minimizing downtime to applications that rely on the database. The AWS Database Migration Service can migrate your data to and from the most widely used commercial and open-source databases.

In addition to AWS DMS, you can use AWS Schema Conversion Tool (AWS SCT) to migrate data warehouses. See the full list of AWS SCT supported sources.

illustration of databases

Feature benefits

AWS DMS is simple to use. There is no need to install any drivers or applications, and it does not require changes to the source database in most cases. You can begin a database migration in just a few steps in the AWS Management Console.

AWS DMS helps you migrate your databases to AWS with virtually no downtime. All data changes to the source database that occur during the migration are continuously replicated to the target, allowing the source database to be fully operational during the migration process.

After the database migration is complete, the target database will remain synchronized with the source for as long as you choose, allowing you to switch over the database at a convenient time.

AWS DMS is a low-cost service. You pay only for the compute resources used during the migration process and any additional log storage.

Migrating a terabyte-size database can be done at a low cost. This applies to both homogeneous and heterogeneous migrations of supported databases. This is in stark contrast to conventional database migration methods that can be very expensive.

AWS DMS is highly resilient and self-healing. It continually monitors source and target databases, network connectivity, and the replication instance. In case of interruption, it automatically restarts the process and continues the migration from where it stopped. The Amazon Relational Database Service (Amazon RDS) Multi-AZ option allows you to have high availability for database migration and continuous data replication by enabling redundant replication instances.

You can set up an AWS DMS task for either one-time migration or ongoing replication. An ongoing replication task keeps your source and target databases in sync. Once set up, the ongoing replication task will continuously apply source changes to the target with minimal latency. All AWS DMS features, such as data validation and transformations, are available for a replication task.

AWS DMS can be used to migrate data both into and out of the cloud for development purposes. There are two common scenarios. The first is deploying developmental, testing, or staging systems on AWS to take advantage of the cloud’s scalability and rapid provisioning. This lets developers and testers use copies of real production data, then copy updates back to the on-premises production system.

The second scenario is when development systems are on premises (often on personal laptops) and you migrate a current copy of an AWS production database to these on-premises systems—either once or continuously. You can avoid a disruption to existing DevOps processes while ensuring the up-to-date representation of your production system.

You can use AWS DMS to consolidate multiple source databases into a single target database. This can be done for homogeneous and heterogeneous migrations, and you can use this feature with supported database engines. The source databases can be located in your own premises outside of AWS, running on an Amazon Elastic Compute Cloud (Amazon EC2) instance, or Amazon RDS databases. The source databases can also be spread across different locations.

For example, one of the source databases can be in your own premises outside of AWS, with the second one in Amazon EC2, and the third one in an Amazon RDS database. The target can be a database in Amazon EC2 or Amazon RDS.

Migration planning

AWS Database Migration Service (AWS DMS) Fleet Advisor is a free, fully managed capability of AWS DMS. It automates migration planning and helps you migrate database and analytics fleets to the cloud at scale with minimal effort. To accelerate migrations, AWS DMS Fleet Advisor automatically inventories and assesses your on-premises database and analytics server fleet and identifies potential migration paths. Using historical performance and usage patterns collected from self-managed databases, Fleet Advisor can recommend target database engines and instance options as well as estimate costs. AWS DMS helps you confidently migrate your databases and analytics systems to AWS with virtually no downtime.

AWS DMS Fleet Advisor discovers and analyzes the same source databases supported in AWS DMS, including Oracle, Microsoft SQL Server, MySQL, PostgreSQL, and more. AWS DMS Fleet Advisor delivers results in a few hours, instead of weeks or even months, without using third-party tools or hiring migration experts.

Start your migration planning using AWS DMS Fleet Advisor in a few steps in the AWS DMS console.

Schema assessment and conversion

AWS Database Migration Service Schema Conversion (AWS DMS SC) is a fully managed feature of AWS DMS that allows you to automatically assess and convert database schemas and code objects at scale with zero downtime. AWS DMS SC supports popular heterogeneous migrations, such as Oracle to Amazon Relational Database Service (Amazon RDS) for PostgreSQLSQL Server to Amazon Relational Database Service (Amazon RDS) for MySQLSQL Server to Amazon Aurora PostgreSQL-Compatible Edition, and Oracle to Amazon Aurora MySQL-Compatible Edition. You can save weeks or months of manual time and resources with a few steps in the AWS DMS console.

In a few steps, you can generate an assessment report that shows the schema conversion complexity. This report provides prescriptive guidance on how to resolve any incompatibilities between the source and target database engines. Learn more about AWS DMS SC in the documentation and how to get started guide.

Alternatively, you can download AWS SCT and perform a similar assessment and conversion on your local system. The AWS SCT user guide provides detailed instructions on how to get started, best practices, and troubleshooting.

Database and analytics migration

Migration support: AWS DMS can migrate your data to and from most of the widely used commercial and open source databases. It supports homogeneous migrations such as Oracle to Oracle, as well as heterogeneous migrations between different database infrastructures, such as Oracle to Aurora.

AWS DMS supports 20-plus databases and data warehouses as source and target endpoints.

Since the schema structure, data types, and database code are compatible between the source and target databases, this kind of migration is a one-step process. You create a migration task with connections to the source and target databases, and then start the migration with the click of a button. AWS DMS takes care of the rest.

The source database can be located in your own premises outside of AWS, running on an Amazon EC2 instance, or an Amazon RDS database. The target can be a database in Amazon EC2 or Amazon RDS.

AWS DMS has a couple of options to perform homogeneous migrations. The first option is using built-in native database tooling to automatically migrate to the target database without the need to manage replication instances. It is best used to migrate all data types and secondary objects for MySQL and PostgreSQL migrations to Aurora and Amazon RDS as target engines. Alternative options, using AWS Database Migration Service (AWS DMS) Serverless or on-demand replication instances, are available for all other engines.

  • Heterogeneous database migrations: In heterogeneous database migrations, the source and target databases engines are different, such as in the case of Oracle to Aurora, Oracle to PostgreSQL, or Microsoft SQL Server to MySQL migrations.

    In this case, the schema structure, data types, and database code of source and target databases can be quite different, requiring a schema and code transformation before the data migration starts.

    That makes heterogeneous migrations a two-step process. First, use AWS DMS SC to convert the source schema and code to match that of the target database. Then use AWS DMS to migrate data from the source database to the target database. AWS DMS offers the option to use on-demand replication instances or AWS DMS Severless, which simplifies migrations by automating the time-consuming tasks of provisioning, monitoring, and scaling migration resources.

    All required data types will be automatically converted during the migration. The source database can be outside of AWS on your own premises or a third-party database service, on an Amazon EC2 instance, or an Amazon database. Likewise, the target database can be outside AWS, on an EC2 instance, or a managed Amazon database and analytics service. See the list of supported source and target engines.

Serverless

AWS DMS Serverless offers the flexibility and ease to migrate data without the need to provision replication instances or manually monitor use and adjust capacity. It automatically provisions, monitors, and scales migration resources to the optimal capacity needed to meet demand. AWS DMS Serverless supports popular AWS DMS use cases including continuous data replication, database consolidation, and migrations, even if the source and target database engines differ. It aids even the most complex migrations, including simultaneously migrating tens or even hundreds of workloads or completing ongoing data replications on AWS.

AWS DMS Serverless is cost-effective, as you no longer need to overprovision resources to peak demand. You only pay for the data migration capacity you use. Visit the AWS DMS Serverless documentation to learn more.

For homogeneous migrations between like-to-like or compatible engines, AWS DMS also offers the option to use built-in native tooling with automatic scaling for a seamless database migration. Pay only for the hours used.

Continuous data replication

With AWS DMS, you can continuously replicate data with low latency from a supported source to a supported target. Continuous data replication has a multitude of use cases, including disaster recovery instance synchronization, geographic database distribution, and development and test environment synchronization.

You can use AWS DMS for both homogeneous and heterogeneous data replications for supported database engines. The source or destination databases can be located in your own premises outside of AWS, running on an Amazon EC2 instance, or an Amazon RDS database.

You can replicate data from a single database to one or more target databases or consolidate and replicate data from multiple databases to one or more target databases.

For example, you can replicate from multiple sources to Amazon Simple Storage Service (Amazon S3) to build a highly available and scalable data lake solution. You can also consolidate databases into a petabyte-scale data warehouse by streaming data to Amazon Redshift.

Get started by learning how to set up an AWS DMS replication instance and working with AWS DMS replication instances.

FAQs

AWS DMS is used for database and analytics migrations to and from AWS, in addition to continuous data replication and database consolidation. With AWS DMS, you can modernize to managed services, including Aurora. AWS DMS includes features like AWS DMS SC to convert schemas and source code and AWS DMS Serverless to automatically provision, monitor, and scale capacity resources for a low-touch migration.

The AWS DMS Free Tier includes up to 750 hours per month for a single-AZ dms.t2.micro instance. Depending on the feature, there is a cost based on usage. For AWS DMS Fleet Advisor and AWS SC, you only pay for the storage used. For AWS DMS migration options, whether using replication instances or serverless options, you pay for what you use by the hour. See AWS DMS pricing for more details.