Bluemix上Python应用启动ERR import MySQLdb ImportError: No module named MySQLdb

标签: pythonmysqlBluemix云平台requirements
1322人阅读 评论(0) 收藏 举报
分类:

在将“Bluemix云端数据库服务ClearDB MySQL使用示例———Python开发投票程序”的程序通过“cf”工具上传到Bluemix上后,启动失败,根据提示使用“cf logs pyVote --recent”命令查看日志中提示:ERR import MySQLdb ImportError: No module named MySQLdb,如下图:



解决方法:

修改项目中的“requirements.txt”文件。

这是一个纯文本的文件,只要在里面添加一句就可以:

MySQL-python==1.2.3
然后再执行:

cf push pyVote
上传应用程序代码,之后就会看到类似的提示:


Bluemix中会使用pip根据“requirements.txt”文件中声明的依赖项去安装所需要的依赖,安装成功后就可以启动成功了。

关于“requirements.txt”文件

Bluemix是使用“requirements.txt”文件名,而实际应该是“requirements.pip”,这是 pip(包管理工具)的功能。

pip 可以根据 requirements.txt 安装类库。

在很多Python项目中都包含一个requirements.pip文件,里面写的是一些包的名称和版本之类的信息,这是做什么用的呢?
比如一个requirements.pip文件内容如下:

html5lib==0.999
ipdb==0.8
ipython==2.3.1
mongo==0.2.0
path.py==7.0
python-dateutil==2.3
requests==2.5.0
unicodecsv==0.9.4
这里面写的是运行这个项目所需要的环境,包括一些库,运行之前需要使用pip install -r requirements.pip命令安装这些库。

Python项目中经常会带requirements.txt文件,里面是项目所依赖的包的列表,也就是依赖关系清单,这个清单也可以使用pip命令自动生成。
pip命令:

pip freeze > requirements.txt
这样就自动生成requirements.txt了。如果需要生成在虚拟环境下的依赖关系,需要先进入虚拟环境。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    联系我

    QQ群:IT十年(170273637)

    加群暗号:微wx笑

    个人资料
    • 访问:8286561次
    • 积分:62376
    • 等级:
    • 排名:第38名
    • 原创:800篇
    • 转载:223篇
    • 译文:53篇
    • 评论:1766条
    博客专栏
    文章分类
    最新评论
    友情链接