在计算引擎中托管的MySQL数据库的Appengine

时间:2016-01-28 22:02:28

标签: google-app-engine google-compute-engine google-app-engine-python

有人知道是否可以将Appengine的应用程序连接到计算引擎中托管的mysql数据库?

我试图用python做这个,我有这个错误:

  

无法创建TCP / IP套接字(-1)

我使用的是使用下一个配置的SqlAlchemy ORM:

create_engine('mysql+mysqldb://root@ip/database')

并且在本地工作,但是当我将应用程序部署到appengine并不起作用时。

由于

1 个答案:

答案 0 :(得分:0)

默认情况下,Google App Engine在sandboxed环境中运行代码,这意味着Python运行时环境的某些方面受到限制,或者响应方式不同。其中一个方面是出站网络连接 - 虽然GAE supports sockets,但存在某些限制,并且套接字仅适用于付费应用。

用于在GAE应用中存储信息的recommended options包括App Engine DatastoreGoogle Cloud SQLGoogle Cloud Storage。 Google Cloud SQL是MySQL和works with SQLAlchemy,因此这可能是您的最佳选择。

如果您绝对需要运行自己的MySQL服务器(而不是使用Google Cloud SQL)并从GAE应用程序连接到它,另一个选项是使用managed VM environment,这允许不受限制的网络访问(从那时起)它本质上是一个顶部有App Engine运行时的Google Compute Engine VM。