AWS Prescriptive Guidance
Patterns

Migrate an on-premises MySQL database to Aurora MySQL

R Type :ReArchitect

source :Databases: Relational

target :Amazon Aurora MySQL

tags :mysql, database, amazon aurora(mysql)

categories :Software Infrastructure

Summary

This pattern explains how to migrate an on-premises MySQL source database to Amazon Aurora MySQL. It describes two options for migration: using AWS Database Migration Service (AWS DMS) or using native MySQL tools.

Assumptions and Prerequisites

Prerequisites

  • An active AWS account

  • A source MySQL database (versions 5.5 or 5.6) in an on-premises data center

Limitations

  • Database size limit: 64 TB

Architecture

Source technology stack

  • MySQL version 5.5 or 5.6 on-premises database. For a complete, up-to-date list of sources, see Sources for Data Migration in the AWS DMS documentation.

Target technology stack

  • Amazon Aurora MySQL

Target architecture

AWS data migration architecture

Using AWS DMS:

Tools Used

Migration options: AWS DMS or native MySQL tools

AWS DMSAWS Database Migration Service (AWS DMS) supports several types of sources and target databases. For details, see Sources for Data Migration in the AWS DMS documentation. If AWS DMS doesn't support your source database, select another method for migrating the data. For more information about using AWS DMS, see AWS DMS Step-by-Step Walkthroughs.

Epics

Plan the migration

Tasks

Title Description Skills Predecessor
Validate the source and target database version and engine. DBA
Identify hardware requirements for the target server instance. DBA, SysAdmin
Identify storage requirements (storage type and capacity). DBA, SysAdmin
Choose proper instance type based on capacity, storage features, and network features. DBA, SysAdmin
Identify the network access security requirements for source and target databases. DBA, SysAdmin
Identify the application migration strategy. DBA, SysAdmin, AppOwner

Configure the infrastructure

Tasks

Title Description Skills Predecessor
Create a virtual private cloud (VPC). SysAdmin
Create security groups. SysAdmin
Configure and start an Amazon RDS for MySQL DB instance. SysAdmin

Migrate data - option 1

Tasks

Title Description Skills Predecessor
Use native MySQL tools or third-party tools to migrate database objects and data. DBA

Migrate data - option 2

Tasks

Title Description Skills Predecessor
Migrate data with AWS DMS. DBA

Migrate the application

Tasks

Title Description Skills Predecessor
Follow the application migration strategy. DBA, SysAdmin, AppOwner

Cut over

Tasks

Title Description Skills Predecessor
Switch the application clients over to the new infrastructure. DBA, SysAdmin, AppOwner

Close the project

Tasks

Title Description Skills Predecessor
Shut down temporary AWS resources. DBA, SysAdmin
Review and validate the project documents. DBA, SysAdmin, AppOwner
Gather metrics around time to migrate, % of manual vs. tool, cost savings, etc. DBA, SysAdmin, AppOwner
Close out the project and provide feedback.

References and Help

References

Tutorials and videos

Contact and help

Migration Pattern Library Support: aws-mpl@amazon.com