如何使用pip安装Python的MySQLdb模块?
这很容易,但很难记住正确的拼写:
pip install mysqlclient
如果你需要1.2。x版本(仅适用于遗留的Python),使用pip安装MySQL-python
注意:在运行上述命令时,有些依赖项可能必须就位。一些关于如何在不同平台上安装这些工具的提示:
Ubuntu 14, Ubuntu 16, Debian 8.6 (jessie)
sudo apt-get install python-pip python-dev libmysqlclient-dev
Fedora 24:
sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
苹果操作系统
brew install mysql-connector-c
如果失败了,那就试试
brew install mysql
我也有同样的问题。如果您使用的是Windows,请遵循这些步骤。 至: 1.我的电脑 2.系统属性 3.系统高级设置 4. 在“高级”选项卡下单击“环境变量”按钮 5. 然后在“系统变量”下,您必须添加/更改以下变量:PYTHONPATH和Path。下面是我的变量的粘贴: python路径:
C:\Python27;C:\Python27\Lib\site-packages;C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\Python27\Scripts
路径:
C:\Program Files\MySQL\MySQL Utilities 1.3.5\;C:\Python27;C:\Python27\Lib\site-packages;C:\Python27\Lib;C:\Python27\DLLs;C:\Python27\Lib\lib-tk;C:\Python27\Scripts
参考这个链接
从新的Ubuntu 14.04.2系统开始,需要这两个命令:
apt-get install python-dev libmysqlclient-dev
pip install MySQL-python
仅仅自己进行“pip安装”是行不通的。
从http://codeinthehole.com/writing/how-to-set-up-mysql-for-python-on-ubuntu/
我在通过Pip(问题编译源)在Windows上安装64位版本的MySQLdb时遇到了问题[32位版本安装ok]。设法从http://www.lfd.uci.edu/~gohlke/pythonlibs/上的.whl文件安装编译后的MySQLdb
然后,.whl文件可以通过pip作为https://pip.pypa.io/en/latest/user_guide/#installing-from-wheels中的文档安装
例如,如果你保存在C:/ the,你可以安装通过
pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
后续:如果你安装了64位版本的Python,那么你想从上面的链接安装64位AMD版本的MySQLdb[即,即使你有英特尔处理器]。如果你尝试安装32位版本,我认为你会在下面的评论中得到不支持的轮子错误。
如果你使用的是树莓派(Raspberry Pi)
首先需要安装pip命令
apt-get install python-pip
这就是按顺序安装
apt-get install python-dev libmysqlclient-dev
apt-get install python-pip
pip install MySQL-python
我尝试了所有的选项,但不能让它在红帽平台上工作。 我做了下面的工作:-
yum install MySQL-python -y
一旦包被安装,就可以在解释器中导入模块如下
>>> import MySQLdb
>>>
上面的答案很好,但是在Windows中使用pip安装MySQL-python时可能会出现一些问题
例如,它需要一些与Visual Stdio相关的文件。一个解决方案是安装VS2008或2010......显然,它花费太多。
另一种方法是@bob90937的答案。我是来补充的。
通过http://www.lfd.uci.edu/~gohlke/pythonlibs,你可以下载许多科学开源扩展包的Windows二进制文件,用于Python编程语言的官方CPython发行版。
回到主题,我们可以选择MySQL-python(py2)或Mysqlclient(py3)并使用pip install进行安装。它给我们很大的方便!
第一个
pip install pymysql
然后将下面的代码放入__init__.py (projectname/__init__.py)
import pymysql
pymysql.install_as_MySQLdb()
我的环境是(python3.5, django1.10),这个解决方案适合我!
希望这能有所帮助!!
转到pycharm,然后转到默认设置——> pip(双击)——pymsqldb..——> install——在像这样的程序中安装使用之后
import pymysql as MySQLdb
# Open database connection
db = MySQLdb.connect("localhost","root","root","test" )
# prepare a cursor object using cursor() method
cursor = db.cursor()
# execute SQL query using execute() method.
cursor.execute("show tables")
# Fetch a single row using fetchone() method.
data = cursor.fetchall()
print (data)
# disconnect from server
db.close()
PIP安装mysql-connector-python 如文档中所述:
https://dev.mysql.com/doc/connector-python/en/connector-python-installation-binary.html
如果你无法安装mysqlclient,你也可以安装pymysql:
安装pymysql
这与MySqldb的工作原理相同。之后使用pymysql代替MySQLdb
在RHEL 7:
Sudo yum安装yum-utils mariadb-devel python-pip python-devel GCC
sudo /bin/pip2 install MySQL-python
如果你的系统上安装了Windows,那么在cmd上输入以下命令:
pip install mysql-connector
如果上述命令不起作用,请尝试使用:
pip install mysql-connector-python
现在,如果上面的命令不能完成工作,尝试使用:
pip install mysql-connector-python-rf
好了,你现在可以走了。
我的环境是:
Windows 10 Pro, Python 3.7 (Python -3.7.1-amd64.exe) MySQL 8.0 (MySQL -install -web-community-8.0.13.0 msi)
PIP安装mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl
对我有用。
import MySQLdb, sys
# --------------------------------------------------
# Connect to MySQL
# --------------------------------------------------
try:
db = MySQLdb.connect(host="localhost", user="user", passwd="pass", db="database", charset='cp1251')
except MySQLdb.Error as e:
print ("Error %d: %s" % (e.args[0], e.args[1]))
sys.exit()
# Creating cursor
cursor = db.cursor()
实际上,遵循@Nick T的答案对我不起作用,我尝试apt-get install python-mysqldb对我有效
root@2fb0da64a933:/home/test_scrapy# apt-get install python-mysqldb
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libmariadbclient18 mysql-common
Suggested packages:
default-mysql-server | virtual-mysql-server python-egenix-mxdatetime python-mysqldb-dbg
The following NEW packages will be installed:
libmariadbclient18 mysql-common python-mysqldb
0 upgraded, 3 newly installed, 0 to remove and 29 not upgraded.
Need to get 843 kB of archives.
After this operation, 4611 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian stretch/main amd64 mysql-common all 5.8+1.0.2 [5608 B]
Get:2 http://deb.debian.org/debian stretch/main amd64 libmariadbclient18 amd64 10.1.38-0+deb9u1 [785 kB]
Get:3 http://deb.debian.org/debian stretch/main amd64 python-mysqldb amd64 1.3.7-1.1 [52.1 kB]
Fetched 843 kB in 23s (35.8 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package mysql-common.
(Reading database ... 13223 files and directories currently installed.)
Preparing to unpack .../mysql-common_5.8+1.0.2_all.deb ...
Unpacking mysql-common (5.8+1.0.2) ...
Selecting previously unselected package libmariadbclient18:amd64.
Preparing to unpack .../libmariadbclient18_10.1.38-0+deb9u1_amd64.deb ...
Unpacking libmariadbclient18:amd64 (10.1.38-0+deb9u1) ...
Selecting previously unselected package python-mysqldb.
Preparing to unpack .../python-mysqldb_1.3.7-1.1_amd64.deb ...
Unpacking python-mysqldb (1.3.7-1.1) ...
Setting up mysql-common (5.8+1.0.2) ...
update-alternatives: using /etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Setting up libmariadbclient18:amd64 (10.1.38-0+deb9u1) ...
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Setting up python-mysqldb (1.3.7-1.1) ...
root@2fb0da64a933:/home/test_scrapy# python
Python 2.7.13 (default, Nov 24 2017, 17:33:09)
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
>>>
这里给出的很多答案都很让人困惑,所以我会尽量简单地说。它帮我安装了这个
pip install pymysql
然后在python文件中使用以下命令
import pymysql as MySQLdb
这样你就可以毫无问题地使用MySQLdb了。