There are so many options, and so many things to condider.
Have a look at the two articles tagged Architecture in my blog:
Unless you’re going to need a lot of performance (hundreds of users) it’s simpler to leave MySQL on the same server as the web application. It can be moved to a separate server later.