A Guide to AWS Database Migration Service


Amazon Web Service Database Migration Service (AWS DMS) is a cloud-based service that facilitates easy and seamless migration of databases to AWS. You can migrate databases from on-premises systems to the cloud, from one cloud provider to another, and even from the cloud to on-premises systems though this is rarely done given the cutting-edge advantages of the cloud. What matters for AWS DMS is that any one of the source or target databases should be functioning in the cloud.

A critical advantage of AWS DMS is its compatibility with the most common and used databases. Further, data can be continually replicated with DMS and several databases can be easily consolidated into a petabyte-sized data warehouse by streaming data to Amazon Simple Storage Service (S3) or Amazon Redshift. 


Also, when you are migrating databases with AWS DMS, the source database need not be shut down and can remain fully functional throughout the process. This is a great help for large corporations and enterprises as for them, downtime even for limited periods can upset their operational schedules. 

The other benefits of AWS DMS will be seen in great detail later in this post. 

Methods of database migration with AWS DMS

There are two ways to migrate databases through AWS DMS.

# Homogeneous database migration

This form of database migration is done when the source database engine and the target database engine are similar. Also, the data codes, data types, and the schema structures of the source and the target databases should be the same. Hence, database migration is a simple one-step process. As soon as a connection is established between the source and target databases, AWS DMS starts the migration with a click of a button. 

The source database for AWS DMS migration may be an Amazon RDS or it can be running on an Amazon EC2 instance outside the AWS. The target database can be in Amazon RDS or the Amazon EC2 instance. 

Some of the examples of homogeneous database migration are MySQL to Amazon RDS for MySQL. Oracle to Amazon RDS for Oracle, Microsoft SQL Server to Amazon RDS for SQL Server, and MySQL to Amazon Aurora.

# Heterogeneous database migration

This type of database migration with AWS DMS is done when the engines of the source and the target databases are not the same and the data codes, data types, and schema structures are different too. Hence, migration is more complex than homogeneous migration as schema and code transformation are needed before migration. 

Heterogeneous migration is a two-step process. First, the AWS SCT (Schema Conversion Tool) is used to convert the data code and the schema structure of the source database to match that of the target database. After this step is completed the migration process can be initiated. The conversion is done automatically by AWS DMS. 

For heterogeneous migration, the source database can be on the Amazon RDS located either on-premises, Amazon EC2 instance, or off-site. The target database may be on Amazon RDS or an Amazon EC2 instance. Some forms of this migration are Microsoft SQL Server to MySQL migrations,Oracle to Amazon Aurora, or Oracle to PostgreSQL.

Benefits of AWS Database Migration Service

Several benefits of AWS DMS make it the preferred database migration option for modern-day businesses. 

  • When the target database is one of Amazon Redshift, Amazon Aurora, or Amazon DynamoDB, AWS DMS offers free data migration for six months.
  • AWS DMS provides total infrastructure support for database migration, automatically deploying, managing, and tracking the progress. Once AWS DMS is suitably configured, migration can be started immediately. 
  • Being based in the cloud, AWS DMS provides flexible storage capabilities to users. You pay only for the quantum of resources used for migration without any other charges or upfront fees. In case of a shortage, additional storage is provided immediately and migration can be resumed. 
  • Automatic failover and reversal are one of critical benefits offered by AWS DMS. If the primary server fails during the migration or there is an outage or any disruption, secondary servers in the region, remote locations, or on-premises are automatically triggered for seamless continuation of migration. Once the issue is resolved, the failover feature ensures that the primary server is activated and updated with all the changes that occurred in the disruption period. 
  • All support systems for migration are automatically handled by AWS DMS including optimized functioning of hardware and software, error reporting, and software patching. 
  • You can carry out migration between most types of source and target databases as almost all common DBMS source database engines and popular database engines are supported by AWS DMS.
  • The migration procedure is fully safe and secure with AWS DMS. Data at rest in the source database is encrypted with the AWS Key Management Service. Data in flight that is, data in transit between the source and the target is encrypted with the Secure Socket Layer (SSL). 

These are some of the benefits of database migration with AWS DMS. 

While database migration is a smooth process there are certain limitations of AWS DMS too.You might face some conversion issues as code and schema conversion in heterogeneous migration is not done directly by AWS DMS but a third-party tool AWS SCT. Further, system slowdown is often observed during migration when the source database resources are used for moving large volumes of data. 

Despite these issues, AWS DMS is a highly optimized tool for database migration.