我使用的是Python 2.5.4版本,安装MySQL 5.0版本和Django。Django和Python配合得很好,但MySQL不行。我在Windows Vista中使用它。
当前回答
注意,这没有针对python 3.x进行测试
在CMD
pip install wheel
pip install pymysql
在settings.py
import pymysql
pymysql.install_as_MySQLdb()
这对我很有效
其他回答
您需要使用以下命令之一。哪一种取决于你拥有和使用的操作系统和软件。
安装mysql-python(混合操作系统) PIP install mysql-python (mix os/ python 2) PIP安装mysqlclient(混合操作系统/ python 3) 安装python-mysqldb (Linux Ubuntu…) cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD) 安装MySQL-python (Linux Fedora, CentOS…)
安装mysql-python (Windows)
...记住python3.x没有MySQLdb
(我知道问题是关于python2的。X但是谷歌对这篇文章的评价相当高)
编辑:正如评论中所述,MySQLdb的分支增加了对Python 3的支持:github.com/PyMySQL/mysqlclient-python
Windows:
pip install mysqlclient pymysql
然后:
import pymysql
pymysql.install_as_MySQLdb()
python 3 Ubuntu
sudo apt-get install -y python3-mysqldb
在mac上的mysql.connector.python 8.0.24版本中遇到过这个问题(如果代码基相同,那么在windows中也应该会出现这个问题)。这个文件在51行导入了“from django.db.backends.mysql.base import DatabaseWrapper as MySQLDatabaseWrapper”。导入的文件具有以下代码14-20(您收到的确切代码和错误是代码的一部分
try:
import MySQLdb as Database
except ImportError as err:
raise ImproperlyConfigured(
'Error loading MySQLdb module.\n'
'Did you install mysqlclient?'
) from err
误差在这里形成。不知道为什么这个导入会在不同版本的mysql连接器中返回,但8.0.23没有导入,所以我恢复到那个版本,错误消失了…这是在你希望继续使用mysql.connector.python的情况下
Python 3
确定进口顺序:
#BAD
import MySQLdb # <------ NOT here
import pymysql
pymysql.install_as_MySQLdb()
#GOOD
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb # <------- HERE!
推荐文章
- 证书验证失败:无法获得本地颁发者证书
- 当使用pip3安装包时,“Python中的ssl模块不可用”
- 无法切换Python与pyenv
- Python if not == vs if !=
- 如何在django应用程序中显示favicon ?
- 如何从scikit-learn决策树中提取决策规则?
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- 将旋转的xtick标签与各自的xtick对齐
- 为什么元组可以包含可变项?
- 如何合并字典的字典?
- 如何创建类属性?
- 不区分大小写的“in”
- 在Python中获取迭代器中的元素个数
- 解析日期字符串并更改格式
- 使用try和。Python中的if