2013-09-30 105 views
2

我試圖將Django連接到Google雲端SQL,使用python 2.7和django 1.5在windows下工作。我通過這個網頁上的指示去:https://developers.google.com/appengine/docs/python/cloud-sql/django將Django連接到Google Cloud SQL

我的settings.py文件的形式的基本數據庫設置:

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'INSTANCE': 'my_project:instance1', 
     'NAME': 'my_database', 
    } 
} 

當然了適當的可以SQL實例和數據庫通過SQL創建提示谷歌的API控制檯的

當我嘗試以獲得的OAuth2令牌運行manage.py syncdb首次,我得到這個:

OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)")

在問你之前,我確定django和google包都在我的PYTHONPATH中,以及「C:\ Program Files(x86)\ Google \ google_appengine \ lib \ django-1.5」

Any幫助將非常受歡迎!

回答

5

僅當從AppEngine連接時,該數據庫配置纔有意義。如果您想使用django從本地計算機訪問CloudSQL數據庫,則應使用google.appengine.ext.django.backends.rdbms引擎。

你可以在這裏看到不同的配置選項: https://developers.google.com/appengine/docs/python/cloud-sql/django#development-settings

編輯:本google.appengine.ext.django.backends.rdbms引擎已被棄用。如果您想從本地計算機連接到Google Cloud SQL,則應使用IP連接。您可以使用Cloud SQL實例IP(IPv4或IPv6)並使用標準django.db.backends.mysql引擎進行連接。

+0

Google Cloud SQL Second Generation的設置如何?我無法得到它[工作](http://stackoverflow.com/q/34933941/647991) – dangonfast

+0

我更新了迴應。您應該使用IP連接從Google之外進行連接。 –

相關問題