2

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

4 Answers 4

1

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.

0
1

One major difference between MySQL and Aurora is that Aurora only runs in the AWS cloud. You can't run Aurora in any other hosted environment, or on a development laptop or workstation, or an embedded device, etc. You're locked into using AWS if you use Aurora.

Also, Aurora is not completely compatible with MySQL 5.7. Amazon forked MySQL 5.7 some years ago, so some features of MySQL 5.7 you would expect to see aren't implemented in Aurora. I found the functions JSON_ARRAYAGG() and JSON_OBJECTAGG() for example were not implemented until Aurora 2.10.1.

The Aurora release notes also used to document a list of MySQL 5.7 features they do not support. They published this in the Aurora release notes through version 2.02.3 in 2018, but after that they stopped.

The bottom line is that Aurora is not MySQL. It's sort-of-kind-of-compatible, but with exceptions they may or may not document.

1
1

Found Aurora 3 compatible with mysql8.0.23 this week on aws.

aurora3

https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.3010.html

2
  • 4
    Welcome to the DBA.SE community. Do you have any links or extracts that support your statement? This would help increase the quality of your answer, as it popped up in the low quality posts queue. Hit edit and add some details. Thanks for spending your time here.
    – John K. N.
    Commented Nov 17, 2021 at 14:38
  • 1
    This has been done for ya. Thanks for the hint. Commented Nov 30, 2021 at 8:40
0

If my understanding is correct AWS Aurora now supports MySQL 8 here is the link Amazon Aurora supports MySQL 8.0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.