Es posible usar las dos cosas, también te puedes buscar un host de bases de datos gratuitos y te puedes conectar desde PHP, recuerda que el primer parámetro para usar mysql_connect es el servidor a donde te vas a conectar, por lo que es perfectamente posible hacerlo a un externo.
Saludos