在win7下安装了python后,想安装python-mysql,使用pip安装出现如下问题:
pip install MySQL-python
_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory error: command '"C:\Users\fnngj\AppData\Local\Programs\Common\Microsoft\Visual C ++ for Python\9.0\VC\Bin\amd64\cl.exe"' failed with exit status 2
网上一般的解释是,重新安装mysql并在安装mysql是选择安装c++的编译器。。。
我虽然没试过,但感觉肯定行不通啊,我只是想装一个可以让python远程连接mysql的包而已,管本地mysql什么事?有些解释真是误人子弟。
但错误提示里也谢了缺少C++的相关环境,后来在网上找到方法了:
方法如下:
MySQL_python-1.2.5-cp27-none-win_amd64.whl
然后在命令行执行pip install MySQL_python-1.2.5-cp27-none-win_amd64.whl
当然需要在cmd下跳转到下载MySQL_python-1.2.5-cp27-none-win_amd64.whl的目录下
然后就安装成功了MySQL-python
在 python2 中,使用 pip install mysql-python 进行安装连接MySQL的库,使用时 import MySQLdb 进行使用
在 python3 中,改变了连接库,改为了 pymysql 库,使用pip install pymysql 进行安装,直接导入即可使用
但是在 Django 中, 连接数据库时使用的是 MySQLdb 库,这在与 python3 的合作中就会报以下错误了
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb'
1
解决方法:在 init.py 文件中添加以下代码即可。
import pymysql
pymysql.install_as_MySQLdb()
1
2
额,找了一下却没有找到 install_as_MySQLdb() 这个方法的源码,不过顾名思义应该是让 Django 把 pymysql 当成 MySQLdb 来使用吧
当然,出现这个问题可能是另外一个很基本的原因,就是没有安装相关库,这个直接用 pip 安装就可以了,这个在上面也有详细的描述呢