无法在谷歌应用程序引擎中使用MySQL – 加载MySQL数据库模块时出错:没有名为_mysql的模块。 我正在使用cloudSQL

我正在使用googleAppEngineLauncher尝试MySQL连接。

它给出了日志

File "/Users/kakshilshah/Desktop/hope/skeduleBackend/django/utils/importlib.py", line 40, in import_module __import__(name) File "/Users/kakshilshah/Desktop/hope/skeduleBackend/django/db/backends/mysql/base.py", line 17, in <module> raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e) ImproperlyConfigured: Error loading MySQLdb module: No module named _mysql 

我已经完成了pip install MySQL-python

甚至像python manage.py dbshell这样的命令也可以工作,并将我连接到cloudsql后端。

我可以访问那里的所有表格。

但是,运行它给出了同样的错误。

我有MySQL 5.6安装。

将以下内容添加到app.yaml

 - name: MySQLdb version: "latest" 

也没有帮助,因为我检查了库目录,并没有mysqldb。

我的设置 –

 import os DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '173.194.xxx.xxx', 'NAME': 'my_database', 'USER': 'root', 'PASSWORD': 'xxxxxxxx', } } 

如果您通过pip安装了MySQL-Python,则可能无法构build'_mysql'扩展名,这是C扩展名,需要MSVC ++ 9.0来构build:

 building '_mysql' extension error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27 

在Windows上,最好的解决scheme是使用MySQL-python的二进制安装程序,例如http://sourceforge.net/projects/mysql-python 。 如果需要,可以下载用于Python的MSVC ++编译器,但是还需要安装包括C头文件和库的MySQL开发版本,并可能遇到其他问题。

这只对在开发服务器上本地运行应用程序很重要,因为App Engine Python运行时已经在您部署应用程序的远程环境中包含了MySQLdb。

如果你像我一样,正在使用Python 3.5的Ubuntu服务器,我只需要花费几个小时就可以解决这个问题。 Apache服务器不会开始使用我通过我的virtualenv的wsgi设置。

所以我试了一下,PIP安装这个和PIP安装。 所以FYI为Python 3.5,你需要安装pip库mysqlclient通过python和django连接到mysql。 然而,我一直得到同样的错误,你是…最后我所做的是运行: easy_install mysqlclient简单,因此,我相信我失去了一些依赖easy_install得到和安装一击。

祝你好运,希望它可以帮助你,或者发现这个页面的其他人在隧道尽头寻找光明。