我在这个任务上已经有一段时间了,我找到了很多关于这个问题的帖子,但似乎没有一个是最近才对我有帮助的(很多关于Python2.7的帖子,以及少数关于python3不使用MySQL的帖子)
我使用的是Django1.9、Python3.4.2、WSGI3.4.4和MySQLClient 1.3.7
起初,我的apache日志中有这样的错误:
ImproperlyConfigured:加载MySQLdb模块时出错:没有名为_mysql的模块
据我所知,MySql-Python不能在python3上工作,这是安装推荐适配器的命令:
sudo apt-get install python-mysqldb
但是当我安装这个适配器时,我从apache日志中得到这个错误:
ImproperlyConfigured:加载MySQLdb模块时出错:这是MySQLdb版本(1,3,7,'final',1),但_mysql是版本(1,2,3,'final',0)
顺便说一句,我也用pip3安装并更新了mysqlclient,但它看起来什么也没做,因为在安装它之后,我仍然有"No module named _mysql“错误。是我误解了什么,还是这只是一个与Python3的兼容性问题?
如何安装兼容的MySQL适配器?
谢谢。
发布于 2016-01-12 22:02:46
您说的对,MySql-Python不能与Python3一起工作。对于MySQL和Python3,推荐的Django适配器是mysqlclient。您的命令apt-get install python-mysqldb正在为Python2安装MySql-Python包,这在这里没有太大帮助。
您可以使用pip安装mysqlclient。在Ubuntu上,您应该首先安装libmysqlclient-dev python3-dev
apt-get install libmysqlclient-dev python3-dev然后,进入您的虚拟环境。现在你可以使用pip安装mysqlclient了。
pip install mysqlclient如果您没有使用virtualenv (建议您使用),那么可以使用pip3为Python3全局安装它。
pip3 install mysqlclienthttps://stackoverflow.com/questions/34745609
复制相似问题