I’ve been using ClearDB on Heroku for years because it’s so easy to set up and use, but recently got some AWS credits and would like to try and get MySQL on RDS working with my Heroku apps.
Firstly, is it going to be a headache? I’ll need multiple DBs across multiple Heroku apps.
Secondly, how the heck do I setup a basic MySQL database on AWS? 😂 Everything looks so alien and over-complicated with too many options.
I work on a rather high volume website that uses MySQL RDS with Heroku. So it's totally possible. I would say that Heroku Postgres on Heroku is going to be way easier because it's just that much more hands off and completely managed. So if there is any possibility of using Postgres instead, it's probably worth the investment.
Ultimately, it's just a matter of launching an instance in RDS and then setting an environment variable in Heroku with your connection string. You will want to ensure your RDS is in the same region as your Heroku app (probably US East) and you will need your RDS to be publicly accessible to the world. Lastly, make sure you download the certificates from Amazon, put them in your repo, and make sure your connection string references their path.
Heroku has an article about how to use RDS.
Awesome, thank you Colin. I totally agree, Heroku's self-managed DBs are much easier but seems like a waste for me to have a load of AWS credits go unused so I may as well have a tinker with it.
Not sure about RDS but you can definitely get an AWS instance and install MySQL on it.
I used RDS and it was a nightmare. It was so complicated to set up, all these roles, permissions, gates or whatever. Another problem was the price, for some reason it was really and unreasonable expensive.
How much per month? I'm paying Heroku $10/mo for 1gb MySQL storage at the moment, is AWS going to be more?
To be honest, I don't remember because it was a year ago. But I think it was much more than $10 in a month, no matter how much data I had.