Mysql – Migrating MySQL 8.0.20 database to AWS Aurora

amazon-rdsamazon-web-servicesaws-auroraMySQL

I originally posted this question on stack overflow as I did not know this service existed and someone suggested I may get a better answer here.

I was trying to use the AWS RDS Proxy service and realized that the only compatible versions with the service are AWS Aurora databases/clusters.

The current database I have is a MySQL database using MySQL version 8.0.20. AWS Aurora is MySQL compatible but only with version 5.6 and 5.7. I am not overly familiar with these versions and how different it would be to version 8.0.20.

Has anyone gone through the process of converting a MySQL database to Aurora? I know there are docs on the subject out there but they deal with version 5.6 or 5.7, has anyone done it for later versions?

I have all the MySQL code in SQL files along with the stored procedures so the database creation can be automated to an extent, it would just be if anyone has ran into issues doing it/found a better way than running multiple SQL files to transfer over data.

If you have gone through the process are there major differences between MySQL and Aurora in terms of running stored procedures etc?

EDIT

Just to give a bit of background, this question is the original reason I am migrating to Aurora as it seems to have a better service for managing connection pools https://stackoverflow.com/questions/67600414/should-i-use-connection-pooling-in-aws-lambda

Best Answer

The biggest potential problems with going backward from 8.0:

  • CTEs
  • Windowing functions
  • new COLLATIONs
  • Various minor syntax changes that are best found by trying the transfer.

If you are not using those, a mysqldump might produce a file that can be read by 5.6 or 5.7. Try it. Come back with specifics if that fails.