没有名为MySQLdb的模块

jbc*_*dge 365 python django python-2.x

我使用的是Python 2.5.4版,并安装了MySQL 5.0和Django.Django可以正常使用Python,但不适用于MySQL.我在Windows Vista中使用它.

der*_*evo 599

您需要使用以下命令之一.哪一个取决于您拥有和使用的操作系统和软件.

  1. easy_install mysql-python(mix os)
  2. pip install mysql-python(mix os/python 2)
  3. pip install mysqlclient(mix os/python 3)
  4. apt-get install python-mysqldb(Linux Ubuntu,...)
  5. cd/usr/ports/databases/py-MySQLdb && make install clean(FreeBSD)
  6. yum安装MySQL-python(Linux Fedora,CentOS ......)

对于Windows,请参阅以下答案:安装mysql-python(Windows)

  • 在Python 3中,ConfigParser已重命名为configparser以符合PEP 8标准.看起来您正在安装的软件包不支持Python 3.MySQL-python目前不支持Python 3. (9认同)
  • 以及如何使用python 3在virtualenv上安装它?我用过:pip install mysql-python只得到:ImportError:没有名为ConfigParser的模块 (4认同)
  • 在OSX Yosemite中使用1或2时,我收到此错误:`EnvironmentError:mysql_config not found` (2认同)
  • 仅供参考 - 我在 ubuntu 18 上并使用 python3.7。执行“pip install mysqlclient”后,我需要执行“sudo apt-get install libmysqlclient-dev”才能成功安装。 (2认同)

Jan*_*zak 132

...并且记住python3.x没有MySQLdb

(我知道问题是关于python2.x但是google对这篇文章的评价很高)


编辑:正如评论中所述,有一个MySQLdb的分支添加了Python 3支持:github.com/PyMySQL/mysqlclient-python

  • 幸运的是,有一些选择,其中许多使用相同的API:[Python 3和MySQL](http://stackoverflow.com/questions/4960048/python-3-and-mysql) (6认同)
  • [mysqlclient](https://pypi.python.org/pypi/mysqlclient)是MySQLdb的一个分支,适用于Python 3. (4认同)

gok*_*sel 63

如果你的python版本是3.5,做一个pip install mysqlclient,其他的东西对我不起作用


Eva*_*ark 46

mysqldb是一个没有预先安装或与Django预装的Python模块.你可以mysqldb 在这里下载.


小智 34

Ubuntu的:

sudo apt-get install python-mysqldb
Run Code Online (Sandbox Code Playgroud)


A.R*_*ouf 23

请注意,这不是针对python 3.x测试的

在CMD中

pip install wheel
pip install pymysql
Run Code Online (Sandbox Code Playgroud)

在settings.py中

import pymysql
pymysql.install_as_MySQLdb()
Run Code Online (Sandbox Code Playgroud)

它与我合作

  • "pip3安装mysqlclient"为python3.6解决问题 (3认同)

Ars*_*haq 18

我在 ubuntu (linux) 对我有用的是

sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
Run Code Online (Sandbox Code Playgroud)

然后最后

pip install mysqlclient
Run Code Online (Sandbox Code Playgroud)


Uma*_*air 12

对于 Python 3.6+

sudo apt-get install libmysqlclient-dev
pip3 install mysqlclient
Run Code Online (Sandbox Code Playgroud)

成功了


Ven*_*tra 11

试试这个.

pip install MySQL-python
Run Code Online (Sandbox Code Playgroud)

  • 这如何适用于虚拟环境? (2认同)

Aka*_*rma 11

Python 3.8

sudo apt-get install libmysqlclient-dev
sudo apt-get install -y python3-mysqldb
Run Code Online (Sandbox Code Playgroud)
pip3 install pymysql
Run Code Online (Sandbox Code Playgroud)

设置.py

import pymysql
pymysql.install_as_MySQLdb()
Run Code Online (Sandbox Code Playgroud)


alp*_*iii 10

pip install PyMySQL
Run Code Online (Sandbox Code Playgroud)

然后将这两行添加到Project/Project/init .py中

import pymysql
pymysql.install_as_MySQLdb()
Run Code Online (Sandbox Code Playgroud)

适用于WIN和python 3.3+


Kos*_*tyn 7

如果pip install mysqlclient产生错误并且您使用Ubuntu,请尝试:

sudo apt-get install -y python-dev libmysqlclient-dev && sudo pip install mysqlclient
Run Code Online (Sandbox Code Playgroud)


Sau*_*tel 7

对于窗口:

pip install mysqlclient pymysql
Run Code Online (Sandbox Code Playgroud)

然后:

导入pymysql pymysql.install_as_MySQLdb()

对于python 3 Ubuntu

sudo apt-get install -y python3-mysqldb
Run Code Online (Sandbox Code Playgroud)


Alf*_*ang 6

我在windows下遇到了同样的情况,并搜索了解决方案.

看到这篇文章安装mysql-python(Windows).

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

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

pip install mysqlclient==1.3.4
Run Code Online (Sandbox Code Playgroud)


Jam*_*ggs 6

对于在尝试为 寻找解决方案时来到此页面的任何人sqlalchemy,您需要做的就是:

pip install PyMySQL
Run Code Online (Sandbox Code Playgroud)

并调整您的连接字符串以使用 PyMySQL,从mysql://mysql+pymysql://.


Dan*_*pez 5

如果您在 Vista 上运行,您可能需要查看Bitnami Django 堆栈。它是 Apache、Python、MySQL 等的一体化堆栈,与Bitrock跨平台安装程序一起打包,使其非常容易上手。它可以在 Windows、Mac 和 Linux 上运行。哦,而且是完全免费的:)

  • 致 Anthony:我只是觉得有趣的是,得票最高的评论提供了适用于 Linux、FreeBSD 和 OSX 的说明,但没有提供海报指定的 Vista 的说明 (3认同)

Grv*_*agi 5

  • 转到您的项目目录cd.
  • source/bin/activate(如果以前没有激活您的环境).
  • 运行命令 easy_install MySQL-python

  • 不起作用`ModuleNotFoundError:没有名为“ConfigParser”的模块` (2认同)

For*_*had 5

pip install --user mysqlclient 
Run Code Online (Sandbox Code Playgroud)

以上对我来说就像魅力一样。我实际上是从 sqlalchemy 中出错的。环境信息:

Python:3.6,Ubuntu:16.04,康达 4.6.8


Li *_*Xin 5

我个人建议使用pymysql而不是使用真正的 MySQL 连接器,它为您提供独立于平台的界面并且可以通过pip.

您可以像这样编辑 SQLAlchemy URL 架构: mysql+pymysql://username:passwd@host/database