I used to think creating and managing a database (“db”) and a schema for a given service was easy, that I knew all about how to do it. There are a

Database pointers. Messing up a database can mean lights… | by Fred Friis | Expedia Group Technology | Jun, 2021 | Medium

submited by
Style Pass
2021-06-30 07:00:06

I used to think creating and managing a database (“db”) and a schema for a given service was easy, that I knew all about how to do it.

There are actually lots of things that need to be kept in mind in order to avoid easily preventable issues to do with databases and how they interact with your code and tests — this post will cover a bunch. Parts of it is pretty technology specific (eg. AWS RDS and MySQL specific), but much of it is universally applicable for all db technologies, so still worth reading even if you use some other db technology. (including noSQL)

I hope you will find it helpful — and that you will comment and point out any errors or things you think are missing that are worth mentioning!

One of the main points of AWS RDS is to make creating and managing databases easy, but there’s still a surprising amount of complexity and potential pitfalls that should be kept in mind when using RDS, much of which isn’t at all made clear in AWS own (or other) documentation and tutorials.

If your RDS was created using CloudFormation, subsequently tweaking the CloudFormation down the track can result in your RDS being deleted and recreated from scratch, losing all data in the process. It goes without saying this could be disastrous, so be very, very careful with CloudFormation!

Leave a Comment