AWS Database Migration Service (DMS) helps to migrate databases to AWS easily and securely either it may be on-premises or any other cloud vendor. The source/Live database remains fully operational during the migration. The service can migrate data between most widely used databases, such as Oracle to Amazon Aurora or Microsoft SQL Server to MySQL

Benefits:
–  Simple to use means there is no need to install any drivers or applications.
–  Minimal Downtime AWS helps you to 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.
–  DMS Service is fast and Easy to Set-up a migration task within minutes in the AWS Management Console.
–  Resources are virtualized and pooled ensuring physical infrastructure.
–  Rapid Scalability instantly allocates additional computing resources to meet demands.
–  Lower Costs: infrastructure, energy/facility costs and by automation.
–  Enhanced security with VPC and protection of information assets
–  IT resources can be provisioned on demand.

How it works:
To perform a database migration, AWS DMS connects to the source database, reads the source data, formats the data for consumption by the target database, and loads the data into the target database. Most of this processing happens in memory, though large transactions might require some buffering to disk. Cached transactions and log files are also written to disk. AWS DMS creates the target schema objects necessary to perform the migration. However, AWS DMS takes a minimalist approach and creates only those objects required to efficiently migrate the data. In other words, AWS DMS creates tables, primary keys, and in some cases unique indexes, but it doesn’t create any other objects that are not required to efficiently migrate the data from the source. For example, it doesn’t create secondary indexes, non-primary key constraints, or data defaults.

In most cases, when performing a migration, you will also want to migrate most or all of the source schema. If you are performing a homogeneous migration (between two databases of the same engine type), you migrate the schema by using your engine’s native tools to export and import the schema itself, without any data. If your migration is heterogeneous (between two databases that use different engine types), you can use the AWS Schema Conversion Tool to generate a complete target schema for you. If you use the tool, any dependencies between tables such as foreign key constraints need to be disabled during the migration’s “full load” and “cached change apply” phases. If performance is an issue, removing or disabling secondary indexes during the migration process will help. For more information on the AWS Schema Conversion Tool, see AWS Schema Conversion Tool.