【发布时间】:2014-05-12 09:32:15
【问题描述】:
我正在尝试在 Google 应用引擎上设置一个 django 项目,但我似乎无法从我的计算机连接到数据库来执行诸如 syncdb 之类的操作。
这是我的配置(已更改)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '/cloudsql/something:else',
'NAME': 'db_name',
'USER': 'db_user',
}
}
现在与数据库的连接可以在已部署的应用程序上运行,但当我从端运行它时,我得到的错误是
Can't connect to local MySQL server through socket '/cloudsql/something:else'
我正在运行 osx,显然我安装了 google cloud sdk 以及 app engine SDK,我不确定我缺少什么。
谢谢
【问题讨论】:
-
您是否为您的数据库设置了 IP 地址以供外部访问?
-
@PaulCollingwood 不,我不需要它吗?
-
如果您想从 GAE 应用程序以外的其他东西连接到它,那么您可以这样做,是的,据我所知。您将按每分钟付费。
-
因为当它使用套接字时,它将使用 oauth2 并且在数据库看来连接来自本地主机,所以如果我通过这种方式,我不需要,至少那是我从 django 教程中了解到的没有提到外部 IP,但我确实读到了与套接字的连接需要授予 localhost 的权限
-
好吧,恐怕我对此一无所知。 AFAIK 用于外部访问,您需要一个 IP。我相信很快就会有更多知识渊博的人出现:)
标签: python django google-app-engine mysql-python