O MySQL possui tabelas de segurança que determinam quem tem permissão para se conectar e de qual endereço IP do host.
Aqui está um bom artigo sobre como fazer isso:
http:// /www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html
Se você tiver muitas conexões, considere configurar um servidor para aceitar as conexões e conversar com o servidor sql. A abordagem mais fácil para isso é configurar uma interface REST e usar um servidor web. Os servidores da Web geralmente também são altamente otimizados e relativamente livres de bugs.
Em uma arquitetura semelhante na AWS, uso o nginx com prazer.