Django在AWS Elastic Beanstalk上-没有名为MySQLdb的模块错误

时间:2018-12-23 02:22:46

标签: python mysql django amazon-web-services amazon-elastic-beanstalk

一段时间以来,我一直在使用AWS Elastic Beanstalk运行此Web应用程序,而在64位Amazon Linux / 2.0.1 上运行的Amazon Linux版本Python 2.7上没有任何问题。

当我尝试“ 升级”到最新的Amazon Linux版本时:Python 2.7版本,Linux / 2.7.7 2.0.1之后的任何版本,出现此错误:

ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb.

Did you install mysqlclient or MySQL-python?

我确实已经安装并包含在requirements.txt文件中

MySQL-python==1.2.5
mysqlclient==1.3.14

我尝试重新安装它们,并从要求中将它们中的一个或另一个移走,但还是没有运气。

在我的.ebextensions中,我确实有这些:

packages:
    yum:
        python27-devel: []
        libmemcached-devel: []
        gcc: []
        libxml2-devel: []
        libxslt-devel: []

此后,我已经添加了gcclibx,所以我知道它们不会引起错误。 (我没有尝试删除python27-devellibmemcached-devel

有什么想法吗?

2.0.1之外发生了什么变化,因为一切都在运行2.0.1版本时正常运行,并且在任何较新的EB版本上均不起作用?

3 个答案:

答案 0 :(得分:3)

代替安装

$ apt-get install python-mysqldb 

答案 1 :(得分:3)

通过回顾过去的工作,我认为您可能需要将mysql-devel添加到yum文件中的.ebextensions部分

答案 2 :(得分:2)

这也发生在我身上,据我所记得,您可能需要重建虚拟环境。在弹性beantalk控制台中。或使用eb命令行界面。