我使用的是Python 2.5.4版本,安装MySQL 5.0版本和Django。Django和Python配合得很好,但MySQL不行。我在Windows Vista中使用它。


当前回答

Python 3

确定进口顺序:

#BAD
import MySQLdb             # <------ NOT here
import pymysql
pymysql.install_as_MySQLdb()

#GOOD
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb              # <------- HERE!

其他回答

mysqldb是Python的一个模块,它不是预先安装的,也不是Django自带的。你可以在这里下载mysqldb。

在OSX上,这些命令对我有用

brew install mysql-connector-c 
pip install MySQL-python

如果你正在使用SQLAlchemy,错误在/site-packages/ SQLAlchemy /dialect /mysql/mysqldb.py:

from ...connectors.mysqldb import (
                        MySQLDBExecutionContext,
                        MySQLDBCompiler,
                        MySQLDBIdentifierPreparer,
                        MySQLDBConnector
                    )

因此,您可能错过了SQLAlchemy的mysqldb连接器,解决方案是在安装mysql-python模块后重新安装SQLAlchemy。

Windows:

pip install mysqlclient pymysql

然后:

import pymysql
pymysql.install_as_MySQLdb()

python 3 Ubuntu

sudo apt-get install -y python3-mysqldb

我在窗户下遇到了同样的情况,并寻找解决方案。

参见这篇文章安装mysql-python (Windows)。

它指出安装这样的pip环境是困难的,需要许多其他依赖项。

但我终于知道,如果我们使用mysqlclient版本低于1.3.4,它不再需要这些要求,所以尝试:

pip install mysqlclient==1.3.4