我正在尝试使用Django在GAE上创建一个应用程序,并将CloudSQL作为数据库。
我使用了这个谷歌开发者链接和这个链接来设置开发环境。但我无法连接到本地mysql数据库。
我使用了这个谷歌开发者链接和这个链接来设置开发环境。但我无法连接到本地mysql数据库。
以下是我正在尝试使用的DATABASE设置。
if (os.getenv('SERVER_SOFTWARE', '').startswith('Google App Engine') or
os.getenv('SETTINGS_MODE') == 'prod'):
DATABASES = {
'default': {
'ENGINE': 'google.appengine.ext.django.backends.rdbms',
'INSTANCE': 'instance:appid',
'NAME': 'database_name',
}
}
else:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'USER': 'root',
'PASSWORD': '',
'HOST': 'localhost',
'NAME': 'database_name',
}
}
我的应用在生产环境的 GAE 上运行得非常完美,但是当我尝试在开发环境上启动应用时,出现了以下错误:
File "/home/sandeep/Downloads/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 635, in __init__
raise IOError(errno.EACCES, 'file not accessible', filename)
IOError: [Errno 13] file not accessible: '/usr/local/lib/python2.7/site-packages/MySQL_python-1.2.4-py2.7-linux-x86_64.egg'
完整的堆栈跟踪请查看http://pastebin.com/ZXHv0FPQ
我通过下载源代码,并运行“python setup.py install”来安装了“python-mysql”。
编辑1
我还尝试将MySQLdb添加到库中。
- name: MySQLdb
version: "latest"
收到了这个错误
the library "MySQLdb" is not supported
in "/home/sandeep/development/UploadImage/src/app.yaml", line 14, column 1
编辑2
使用这些设置,Django syncdb工作正常,Django能够为我创建表。但是,当我尝试通过“dev_appserver.py”运行时,我得到了上面的堆栈跟踪信息。
我可以在开发环境中访问cloudSQL。
pip
? - Juan Enrique Muñoz Zolotoochin