mysqlclient是mysql的常用python驱动库。

在Django, SQLAlchemy等python ORM系统里面都是MySQL第一位的推荐库。

但是作为一个python库,在Windows上安装有时候会不容易装上,原因就在于这个python库不是一个纯python库,而pip安装的时候,当前的最新版本未必含有编译好的wheel包。

如果安装只有源码的版本,最后就会试图帮你编译,然而对环境和依赖包要求较高,通常是装不上去的。

比如1.4.2版本,查看pypi上的上传包,只有源代码版本

6de4dec04913c4cde1b2638325559dc0.png

如果进行安装,很容易出现一下错误

(py37) C:>pip install mysqlclient==1.4.2Collecting mysqlclient==1.4.2 Downloading https://files.pythonhosted.org/packages/73/79/67ddf24ac31b05d741f0ac87fa612c7a11bab1b39b8270ed7344d149f8af/mysqlclient-1.4.2.tar.gz (85kB) 100% |████████████████████████████████| 92kB 25kB/sInstalling collected packages: mysqlclient Running setup.py install for mysqlclient ... error ... creating build creating buildlib.win-amd64-3.7 creating buildlib.win-amd64-3.7MySQLdb copying MySQLdb__init__.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdb_exceptions.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdbcompat.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdbconnections.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdbconverters.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdbcursors.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdbelease.py -> buildlib.win-amd64-3.7MySQLdb copying MySQLdbimes.py -> buildlib.win-amd64-3.7MySQLdb creating buildlib.win-amd64-3.7MySQLdbconstants copying MySQLdbconstants__init__.py -> buildlib.win-amd64-3.7MySQLdbconstants copying MySQLdbconstantsCLIENT.py -> buildlib.win-amd64-3.7MySQLdbconstants copying MySQLdbconstantsCR.py -> buildlib.win-amd64-3.7MySQLdbconstants copying MySQLdbconstantsER.py -> buildlib.win-amd64-3.7MySQLdbconstants copying MySQLdbconstantsFIELD_TYPE.py -> buildlib.win-amd64-3.7MySQLdbconstants copying MySQLdbconstantsFLAG.py -> buildlib.win-amd64-3.7MySQLdbconstants running build_ext building 'MySQLdb._mysql' extension creating buildemp.win-amd64-3.7 creating buildemp.win-amd64-3.7Release creating buildemp.win-amd64-3.7ReleaseMySQLdb ... _mysql.c MySQLdb/_mysql.c(29): fatal error C1083: 无法打开包括文件: “mysql.h”: No such file or directory error: command 'C:Program Files (x86)Microsoft Visual Studio2017CommunityVCToolsMSVC14.16.27023binHostX86x64cl.exe' failed with exit status 2

所以可以找一个带有编译完wheel包的版本,比如1.4.1

303d9699e8dfb1fac197c3475ed11ce0.png

从包的名字可以看出,支持python 3.6和python 3.7的64bit版,所以在安装的时候确保你的python的版本在这个范围里面。

安装的时候切记固定版本

(py37) C:>pip install mysqlclient==1.4.1 

这样就很容易安装上了。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐