我正在使用Python 2.5.4版并安装MySQL 5.0和Django。 Django可以正常使用Python,但不适用于MySQL。我在Windows Vista中使用它。
答案 0 :(得分:561)
您需要使用以下命令之一。哪一个取决于您拥有和使用的操作系统和软件。
对于Windows,请参阅以下答案:Install mysql-python (Windows)
答案 1 :(得分:121)
...并且记住没有针对python3.x的MySQLdb
(我知道问题是关于python2.x但谷歌对这篇文章评价很高)
编辑:正如评论中所述,有一个MySQLdb的分支,它增加了Python 3支持:github.com/PyMySQL/mysqlclient-python
答案 2 :(得分:55)
如果您的python版本为3.5
,请执行pip install mysqlclient
,其他内容对我不起作用
答案 3 :(得分:45)
mysqldb
是Python的一个模块,它没有预装或使用Django。您可以下载mysqldb
here。
答案 4 :(得分:33)
Ubuntu:
sudo apt-get install python-mysqldb
答案 5 :(得分:18)
在CMD中
pip install wheel
pip install pymysql
在settings.py 中
import pymysql
pymysql.install_as_MySQLdb()
它与我合作
答案 6 :(得分:11)
试试这个。
pip install MySQL-python
答案 7 :(得分:9)
我在ubuntu(linux)上工作,对我有用的是
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
然后最后
pip install mysqlclient
答案 8 :(得分:8)
pip install PyMySQL
然后将这两行添加到Project / Project / init .py
import pymysql
pymysql.install_as_MySQLdb()
适用于WIN和python 3.3 +
答案 9 :(得分:7)
如果pip install mysqlclient产生错误并且您使用Ubuntu,请尝试:
sudo apt-get install -y python-dev libmysqlclient-dev && sudo pip install mysqlclient
答案 10 :(得分:6)
对于窗口:
pip install mysqlclient pymysql
然后:
导入pymysql pymysql.install_as_MySQLdb()
对于python 3 Ubuntu
sudo apt-get install -y python3-mysqldb
答案 11 :(得分:5)
我在windows下遇到了同样的情况,并搜索了解决方案。
看到这篇文章Install mysql-python (Windows)。
它指出安装这样一个pip环境很困难,需要很多其他的依赖。
但我终于知道,如果我们将mysqlclient
的版本降至1.3.4
,则不再需要这些要求,请尝试:
pip install mysqlclient==1.3.4
答案 12 :(得分:4)
cd
转到项目目录。easy_install MySQL-python
答案 13 :(得分:4)
对于试图为 sqlalchemy
寻找解决方案时访问此页面的任何人,您需要做的就是:
pip install PyMySQL
并调整您的连接字符串以使用 PyMySQL,从 mysql://
到 mysql+pymysql://
。
答案 14 :(得分:3)
感谢derevo,但我认为还有另一种好方法:
pypm install mysql-python
我认为pypm
比easy_install
更强大,更可靠。
答案 15 :(得分:2)
如果您在Vista上运行,您可能需要查看Bitnami Django stack.这是一个包含Bitrock跨平台安装程序的Apache,Python,MySQL等一体化堆栈让它真的很容易上手。它可以在Windows,Mac和Linux上运行。哦,完全免费:)
答案 16 :(得分:2)
在Debian Buster上,以下解决方案适用于python 3.7:
sudo apt-get install libmysqlclient-dev
sudo apt-get install libssl-dev
pip install mysqlclient
答案 17 :(得分:2)
我已经尝试了上面的方法,但仍然没有名为'MySQLdb'的模块,最后,我成功了
easy_install mysql-python
我的环境是unbuntu 14.04
答案 18 :(得分:1)
pip install --user mysqlclient
上面的对我来说就像对我来说很有吸引力。我实际上是从sqlalchemy中出错的。 环境信息:
答案 19 :(得分:1)
我个人建议使用pymysql
而不是使用真正的MySQL连接器,后者为您提供了平台无关的界面,可以通过pip
安装。
您可以这样编辑SQLAlchemy URL模式:
mysql+pymysql://username:passwd@host/database
答案 20 :(得分:1)
对于Python 3.6+ sudo apt-get install libmysqlclient-dev
和pip3 install mysqlclient
可以达到目的
答案 21 :(得分:1)
如果您使用的是SQLAlchemy,则错误位于/site-packages/sqlalchemy/dialects/mysql/mysqldb.py
:
from ...connectors.mysqldb import (
MySQLDBExecutionContext,
MySQLDBCompiler,
MySQLDBIdentifierPreparer,
MySQLDBConnector
)
所以你可能错过了SQLAlchemy
的mysqldb连接器,解决方法是在安装mysql-python
模块后重新安装sqlalchemy。
答案 22 :(得分:1)
在OSX上,这些命令对我有用
brew install mysql-connector-c
pip install MySQL-python
答案 23 :(得分:1)
Python 3
确保导入顺序:
#BAD
import MySQLdb # <------ NOT here
import pymysql
pymysql.install_as_MySQLdb()
#GOOD
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb # <------- HERE!
答案 24 :(得分:0)
Win10 / Python27 这对我有用:
easy_install mysql-python
所有其他“ pip安装...”均因相关性错误而失败
答案 25 :(得分:0)
以上都不是通过docker image在Ubuntu 18.04上进行全新安装的工作。
以下为我解决了它:
apt-get install holland python3-mysqldb
答案 26 :(得分:0)
在运行Catalina v10.15.2的Mac上,出现以下MySQLdb版本冲突:
ImportError: this is MySQLdb version (1, 2, 5, 'final', 1), but _mysql is version (1, 4, 6, 'final', 0)
要解决此问题,我执行了以下操作:
pip uninstall MySQL-python
pip install MySQL-python
答案 27 :(得分:0)
在 mac 上使用 mysql.connector.python 版本 8.0.24 遇到了这个问题(如果代码库相同,那么问题也应该发生在 Windows 中)。第 51 行的 This file 导入“from django.db.backends.mysql.base import DatabaseWrapper as MySQLDatabaseWrapper”。 imported file 具有以下代码 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
答案 28 :(得分:0)
sudo apt-get install libmysqlclient-dev
sudo apt-get install -y python3-mysqldb
pip3 install pymysql
import pymysql
pymysql.install_as_MySQLdb()
答案 29 :(得分:-1)
对于 Python 3 + 版本
将mysql-connector
安装为:
pip3 install mysql-connector
示例Python DB连接代码:
import mysql.connector
db_connection = mysql.connector.connect(
host="localhost",
user="root",
passwd=""
)
print(db_connection)
输出:
> <mysql.connector.connection.MySQLConnection object at > 0x000002338A4C6B00>
这意味着数据库已正确连接。