Question

J'utilise actuellement ma machine locale pour manipuler des données, Google App Moteur pour héberger mon service Web et Google Cloud SQL pour gérer la base de données. Cependant, je dois d'abord télécharger mes données sur GAE, puis exécutez un travail de backend sur GAE pour télécharger toutes les données vers Google Cloud SQL ultérieurement. Il est temps de télécharger deux fois de télécharger des données. Je voudrais importer / mettre à jour une date de ma machine locale à Google Cloud SQL directement.

En ce moment, Google Cloud SQL uniquement prise en charge entièrement prise en charge Google App Moteur comme client.

Google Cloud SQL est actuellement disponible uniquement sur Google App Moteur. applications. Pour développer les applications de moteurs Google App, vous devez Installez le moteur SDK de l'App, disponible dans Python ou Java:

Cependant, comme Google Cloud SQL fournit un JAR DB Pilote pour autoriser la commande Accès client SQL de ligne / Squirrel SQL à partir de la machine locale. On dirait que je peux écrire du code Java pour interagir avec le nuage SQL via ce pot dans la machine locale. Ou je pourrais utiliser des outils tels que jpype pour accéder à Google Cloud SQL via Python.

est-ce possible? Où devrais-je commencer? Ou existe-t-il une solution alternative que je puisse utiliser Python sur la machine locale pour accéder à Google Cloud SQL?

https://developers.google.com/cloud-sql/docs/commandline < / a>

http://jpype.sourceforge.net/

Était-ce utile?

La solution 2

I found a way to connect google cloud sql from python via SDK

def connect_sql(instance, database = None):
    from google.storage.speckle.python.tool import google_sql    
    database = google_sql.DatabaseConfig(instance, database)

    sql_cmd_config = google_sql.config.SQLCmdConfig(None)
    sql_cmd_config.add('__googlesql__', instance, None, None, database,
                    google_sql.GoogleSqlDriver.NAME, None, None)
    sql_cmd = google_sql.GoogleSqlCmd(sql_cmd_config)
    sql_cmd.set_database(instance)

    sql_cmd.preloop()
    return sql_cmd._SQLCmd__db

Autres conseils

This tool is new to me!

If this tool exists, why don't you use it to upload your data to Cloud SQL?

At the time of this writting, there's no official support to connect to Google Cloud SQL from the outside world. Google said is planning to allow access from anywhere in the near future.

In conclusion, try using this tool to upload your data. Using appengine as a middleware could be costly depending on the size of your data.

Cloud SQL now supports the native MySQL wire protocol [1], so you can use standard connectors such as Connector/Python [2]

  1. https://developers.google.com/cloud-sql/docs/external#wireprotocol
  2. http://dev.mysql.com/downloads/connector/python/
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top