Additionally, in theory your ISP could inspect your data as it passes through them on its way to you. However, sites that contain important personal data (such as your bank, email provider, online shops you buy things from, etc) should be secured via SSL. This will prevent anyone from inspecting data in transit.
Your browser will tell you if a site is secure, just look for a green padlock on the left side of the URL bar.
It's a good idea not to send anything personal or important unless you can see one of these.
You'd need to check with whoever is hosting your database. The error message you mention is coming from MySQL, so the connection to the DB appears to be fine, just the permissions for your particular user on the server are at fault.
You need to ensure that your user has privileges to connect to your database. Try connecting from the command line, use the grant command to add permissions to a user, and flush privileges to make sure they're applied.
There aren't any "NEED HOTEL BOOKING APP HALP PLS" posts (they do appear but are swiftly dealt with), there's no spam, there's no drama, there are plenty of people offering advice and pointing people in the right direction.
Importantly, there is a set of rules that is rigid and anything that doesn't comply is dealt with so quick most people are unaware that it happens.
That's the best approach. My suggestion makes sense if you don't have a pile of stuff to migrate, because all the hard work has been done. If migration is a big complex task, cereal's approach is very sensible and more portable between databases/stores.
I develop on an average machine (a 2014 MBP, i5 with 8GB RAM). I don't need any more grunt because I have AWS at my fingertips. I can have a cluster of massively powered machines at a very reasonable price - you only pay for them while you use them.
If, however, I was a gamer, where latency is a key issue, I'd want that power a bit closer. But, I'd need to spend more money even if I only played three hours a week.