I have a two tiered system tech web site on one and the database on another location. If both are in close proximity then it should not matter. for example I can connect to my host database from a web server running as localhost on my development computer not problems. I had to configure the wp_config file to point to my db host IP as it was no longer on the servers localhost settings.
the only problem as I see it (and I have not resolved my problem) is that you need to ensure that the web server has access rights to the MySQL database server. In theory a server that has a dedicated function ie database server or a web server or a application server performs better then a system where all three functions are performed on the one server. More stable and better performance as the server admin can tune each server to best suit the task required.
BUT they must be located with a fast connection between each box. if you are looking at different service providers then the chances are you can get it to work but the performance will suffer as the web server needs to cimmuicat across the world to talk to the database then reply back to the user.
Hope this helps in making your decision
\