Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/03/2013, 07:17
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Base de datos puntajes juego python

El problema que enfrentas tiene varios aspectos. Algunos son tema de BBDD, pero otros no.
Vamos por partes:
- La base de datos que te proveen tiene como host "localhost" porque se supone que los scripts o aplicaciones que se comuniquen con MySQL estarán siempre en el mismo host donde está la base de datos.
- En ese contexto, la aplicación no puede conectarse directamente desde móviles u otras PCs. Sólo podrá hacerlo en modo "local" desde la optica del host.
- Las aplicaciones deben negociar, entonces con algún tipo de servicio o aplicación que se halle en el host (en PHP yo he hecho esto mas o menos fácilmente, Python no es mi dominio).
- El hecho de que le des todos los permisos a un usuario es irrelevante, porque un usuario que crea a otro usuario sólo puede dar los mismos permisos que él tiene, o menos. Y en tu caso tus permisos son sólo de conexión a "localhost".; los permisos de conexión remota son específicos. Es decir que te los deben dar ex-profeso.
- Las reglas de permisos de usuarios son universales en algunos aspectos, esto es, todos los DBMS siguen ciertos principios respecto al diseño de permisos, y esa es una de ellas: No puedes otorgar lo que no tienes para ti.
- En resumen: Para funcionar, según entiendo, tu juego debe postear a la web un mensaje que contenga los datos necesarios para realizar un login local a MySQL, y recién en esa forma registrar los datos. Pero no puede interactuar directamente con la BBDD:

¿Se entiende?

En definitiva, eso es un tema a resolver en programación, no en la base. Si quieres te paso el post al foro de Python.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)