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.
- Simple to use: AWS Database Migration Service 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 with just a few clicks in the AWS Management Console.
- Minimal downtime: AWS Database Migration Service 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.
- Cost effectiveness: AWS Database Migration Service 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.
- Reliable: The AWS Database Migration Service 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. Multi-AZ option allows you to have high availability for database migration and continuous data replication by enabling redundant replication instances.
- On-going replication: You can set up a 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 DMS features, such as data validation and transformations, are available for a replication task.
- Developer productivity: AWS Database Migration Service 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 development, test, 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.
- Database Consolidation: You can use AWS Database Migration Service 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 EC2 instance, or it can be an Amazon RDS database. 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.
AWS DMS Fleet Advisor is a free, fully managed capability of AWS Database Migration Service (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. 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. 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 Fleet Advisor with a few clicks in the DMS console.
Schema assessment and conversion
AWS DMS Schema Conversion (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 Schema Conversion supports popular heterogeneous migrations, such as Oracle to Amazon RDS for PostgreSQL, SQL Server to Amazon RDS for MySQL, SQL 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 clicks in the DMS console.
With a few clicks, 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 Schema Conversion in the documentation and how to get started.
Alternatively, you can download the AWS Schema Conversion Tool (AWS SCT) and perform 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 Database Migration Service 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 Amazon Aurora.
- Homogeneous database migrations: In homogeneous database migrations, the source and target database engines are the same or are compatible, such as Oracle to Amazon RDS for Oracle, MySQL to Amazon Aurora, MySQL to Amazon RDS for MySQL, or Microsoft SQL Server to Amazon RDS for SQL Server.
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 Database Migration Service 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.
- Heterogeneous database migrations: In heterogeneous database migrations, the source and target databases engines are different, such as in the case of Oracle to Amazon 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 Schema Conversion to convert the source schema and code to match that of the target database. Then use the AWS Database Migration Service 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.
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. DMS Serverless supports popular 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 migrating tens or even hundreds of workloads simultaneously 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 Database Migration Service, 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 Dev/Test environment synchronization.
You can use 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 (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.
Q: What is AWS DMS used for?
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 Amazon Aurora. AWS DMS includes features like AWS DMS Schema Conversion to convert schemas and source code and AWS DMS Serverless to automatically provision, monitor, and scale capacity resources for a low-touch migration.
Q: Which AWS DMS features are free?
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 Fleet Advisor and Schema Conversion, you only pay for the storage used. For 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.