To migrate MySQL 8 to Amazon Aurora we will be using AWS Data Migration Service (DMS). AWS is currently offering free use for 6 months per instance if you are migrating Amazon Aurora, Amazon Redshift, Amazon DynamoDB or Amazon DocumentDB. For more on this visit this link.

Data Migration Service Setup

Step 1 – Create Amazon Aurora instance on RDS

Step 2 – Create Replication Instance

Replication instance configuration

Advanced security and network configuration

Maintenance window and tags

Select Maintenance window for DMS minor version upgrade. Set optional Tags if required.

Click Create button.

The replication instance will go from Status Creating to Available.

Step 3 – Create endpoint for Source

Endpoint type

Endpoint configuration

KMS master key

Tags (Optional)

Test endpoint connection (optional)

If the test fails check the Message to troubleshoot.

In this case the replication instance private IP needs to be allowed on port 3306 in the security group.

Test again

Step 4 – Create endpoint for Destination

Endpoint type

Follow Step 3 for the rest of the steps. In Endpoint configuration ensure that Target engine is set correctly to Amazon Aurora MySQL.

Endpoints created for Source and Target.

Step 5 – Create database migration

Task configuration

Task settings

Table mappings

Premigration assessment, Migration task startup configuration, Tags

Leave it at default. Enable premigration assessment run for large workloads.

Database migration task list

Database migration task will not start if there are connectivity issues on the endpoints. Fix it and click Actions > Restart/Resume.

Ensure that Status is Running and monitor Progress of data migration.

Once data has been migrated Status will go to Load complete.

Check Table statistics to troubleshoot any migration issues. You can also enable CloudWatch logs.

Step 6 – Connect to Amazon Aurora from your application.