django开发中用到mysql,所以需要安装mysql对应的python库。django手册中推荐了以下三个库:
Python的Database API 被描述为PEP 249. MySQL拥有三种很棒的能够实现API的驱动:
- MySQLdb是一个由Andy Dustman开发,已经发展并支持十多年的一个本地驱动。
- mysqlclient是MySQLdb的一个分支,它与python3有着特别好的契合并且可以作为MySQLdb的直接替代。在书写这篇的时候,这是在Django使用MySQL的推荐的选择。
- MySQL Connector/Python是一个来自Oracle的纯python驱动,它不需要MySQL client库或在标准库之外的任何Python模块。
因为要使用python3.5,所以直接选择了mysqlclient. MySQL Connector/Python目前官网上只能下载到支持python3.4的版本。
源码安装
首先想到的是去mysqlclient下载源码安装。但安装过程中出现了以下错误:
building ‘_mysql’ extension
_mysql.c(29): fatal error C1083: Cannot open include file: ‘my_config.h’: No such file or directory
creating build\temp.win32-3.5
creating build\temp.win32-3.5\Release
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -Dversion_info=(1,3,9,’final’,1) -Dversion=1.3.9 “-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include” -IC:\Python35-32\include -IC:\Python35-32\include “-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE” “-IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE” “-IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt” “-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um” “-IC:\Program Files (x86)\Windows Kits\8.1\include\shared” “-IC:\Program Files (x86)\Windows Kits\8.1\include\um” “-IC:\Program Files (x86)\Windows Kits\8.1\include\winrt” /Tc_mysql.c /Fobuild\temp.win32-3.5\Release_mysql.obj /Zl
_mysql.c
error: command ‘C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\cl.exe’ failed with exit status 2
哈哈,这他么旧尴尬了。所以这条路走不通
whl安装
后来百度到一个方法。原始blog:Python 3.5 for windows 10 通过pip安装mysqlclient模块 error:C1083.
- pip install wheel 下载wheel包,否则后续没办法安装.whl包
- 在mysql wheel下载对应的wheel包。比如:mysqlclient‑1.3.9‑cp35‑cp35m‑win32.whl
- pip install mysqlclient‑1.3.9‑cp35‑cp35m‑win32.whl即可