Django找不到MySQLdb python modu

2024-06-16 08:45:12 发布

您现在位置:Python中文网/ 问答频道 /正文

从源代码安装Django(python setup.py install等),从源代码安装MySQLdb(python setup.py build,python setup.py install)。使用安装在操作系统(CentOS 5.5)上的Python 2.4。启动服务器后获取以下错误消息:

Error loading MySQLdb module: No module named MySQLdb

调试信息提供的pythonpath包括

'/usr/lib/python2.4/site-packages'

但是,如果我ls那个目录,我可以清楚地看到

MySQL_python-1.2.3-py2.4-linux-i686.egg

使用python交互式shell,我可以键入import MySQLdb,它不会产生错误。这让我相信这是一个Django路径问题,但我一点也不知道从哪里开始寻找,因为我对Django和python都是新手。

编辑:更具体地说,所有内容当前都以根用户身份运行。我还没有在机器上设置任何用户,因此除了根用户之外,没有其他用户存在。

EDITx2:更具体地说,web服务器是Cherokee,使用uWSGI进行部署。全部从源安装。


Tags: installdjango用户pybuild服务器消息源代码
3条回答

你试过建立依赖关系吗?这在Ubuntu上帮我解决了:

sudo apt-get build-dep python-mysqldb
pip install MySQLdb-python

你考虑过从python包安装MySQLdb吗? 我还建议用pip而不是easy_install来完成这项工作。

首先,可以用pip替换easy_install

easy_install pip
pip install pip --upgrade

然后通过PIP安装Django:

pip install MySQL-python
pip install Django

通常,easy_install已经安装(setuptools的一部分),而pip更好。它还提供卸载选项,并使用平面安装目录,而不是鸡蛋文件魔术。这也可能解决一些不兼容的问题。

什么对我有效(Linux Mint):

sudo apt-get install libmysqlclient-dev (this was the key for me)
pip install mysql-python
pip install django

相关问题 更多 >