Pergunta

Eu estou atualmente usando minha máquina local para manipular dados, o Google App Engine para hospedar meu serviço da Web e o Google Cloud SQL para lidar com o banco de dados. No entanto, preciso enviar meus dados para o GAE primeiro, então execute um trabalho de backend no GAE para fazer o upload de todos os dados para o Google Cloud SQL mais tarde. É hora de desperdiçar carregar dados duas vezes. Eu gostaria de importar / atualizar alguma data da minha máquina local para o Google Cloud SQL diretamente.

No momento, o Google Cloud SQL só suportou totalmente o Google App Engine como seu cliente.

.

Google Cloud SQL está atualmente disponível para o Google App Engine formulários. Para desenvolver aplicativos do Google App Engine, você precisa Instale o SDK do Engine do App, disponível em Python ou Java:

No entanto, como o Google Cloud SQL fornece um jar DB driver para permitir o comando Cliente Linha / Acesso ao Cliente SQL SQL da máquina local. Parece que eu posso escrever algum código Java para interagir com o SQL da nuvem por meio desse jarro na máquina local. Ou eu poderia usar ferramentas como jpype para acessar o Google Cloud SQL via Python.

Isso é possível? Onde devo começar? Ou existe alguma maneira alternativa que eu possa usar o Python na máquina local para acessar o Google Cloud SQL?

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

http://jpype.sourceforge.net/

Foi útil?

Solução 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

Outras dicas

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/
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top