Python的MySQLdb模块安装

在配置Django时,选择的是mysql数据库,要安装MySQLdb模块,不过安装过程中,遇到了很多errors,记录一下。

系统:ubuntu 11.10

mysql:直接apt-get安装的,version:5.1.62

到官方下载MySQL for Python

然后解压,打开README:

里面有安装过程:

  # edit site.cfg if necessary python setup.py build 
  $ sudo python setup.py install # or su first

不过在python setup.py build时报错:

ImportError: No module named setuptools

ubuntu下安装:

sudo apt-get install python-setuptools

python-setuptools : Python Distutils Enhancements (setuptools compatibility)

然后再次python setup.py build,又报错:

EnvironmentError: mysql_config not found

因为mysql_config是属于MySQL开发用的文件,而使用apt-get安装的MySQL是没有这个文件的,于是在包安装器里面寻找

sudo apt-get install  libmysqld-dev

libmysqld-dev : MySQL embedded database development files

再次运行python setup.py build,报错:

building ‘_mysql’ extension 
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,’final’,0) -D__version__=1.2.3 -I/usr/include/mysql -I/usr/include/python2.7 -c _mysql.c -o build/temp.linux-i686-2.7/_mysql.o -DBIG_JOINS=1 -fno-strict-aliasing -DUNIV_LINUX -DUNIV_LINUX 
In file included from _mysql.c:29:0: 
pymemcompat.h:10:20: fatal error: Python.h: No such file or directory

解决方案,

sudo apt-get install python-dev

python-dev : header files and a static library for Python (default)

然后就按照README里的:

  pythonsetup.pybuild sudo python setup.py install

测试:

>>>import MySQLdb

没有报错即可。

来源:http://www.cnblogs.com/rollenholt/archive/2012/05/07/2487137.html