cygwin中安装MySQL Python module

xiaohong000 2012-01-13

前面比较简单,直接按图索骥

1、安装cygwin

2、下载mysql包编译安装client端:

tar-xvzfmysql-5.0.37.tar.gz

cdmysql-5.0.37

配置、编译、安装

./configure--without-server

make&&makeinstall

3、编译安装MySQLdb

tar-xvzfMySQL-python-1.2.2.tar.gz

cdMySQL-python-1.2.2

首先修改MySQLdb的编译配置文件:site.cfg,在MySQL-python-1.2.2目录下。

找到[options]项进行如下修改:

放开mysql_config=/usr/local/bin/mysql_config一行,屏蔽#registry_key=SOFTWARE\MySQLAB\MySQLServer5.0一行,因为cygwin属于类Linux不是Windows。

由于我们用在PC机上所以设置embedded为False。

设置threadsafe为False;我们尽量采用静态编译,static设为True。

最后的[options]如下:

[options]
# embedded: link against the embedded server library
# threadsafe: use the threadsafe client
# static: link against a static library (probably required for embedded)
embedded = False
threadsafe = False
static = True
# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.<
mysql_config = /usr/local/bin/mysql_config
# The Windows registry key for MySQL.
# This has to be set for Windows builds to work.
# Only change this if you have a different version.
#registry_key = SOFTWARE\MySQL AB\MySQL Server 5.0

cdMySQL-python-1.2.2

pythonsetup.pybuild

pythonsetup.pyinstall

在安装过程中可能会要求下载setuptools,按要求下载即可。

安装完成在python测试运行的时候遇到问题,死活说没有权限,

报ImportError:Permissiondenied错误

查询相关资料发现,是cygwin下需要修改用户目录下的那个cache的_mysql.dll权限

路径如下:

/home/用户名/.python-eggs/MySQL_python-1.2.2-py2.5-cygwin-1.5.25-i686.eg

g-tmp/_mysql.dll

chmod+x_mysql.dll后再次执行。ok,pass

参考文章:

http://blog.csdn.net/kernelspirit/archive/2007/04/18/1568884.aspx

http://www.velocityreviews.com/forums/t484678-python-eggs-on-cygwin.html

相关推荐