今早,2驾直升机从中关村头上穿过!至今天半年又没有了。。。。。扯到这吧。
下载安装MySQLdb
<1>linux版本
sudo apt-get install python-mysqldb
首先他需要setuptoos 工具的支持
1. wget -q http://peak.telecommunity.com/dist/ez_setup.py
2.python ez_setup.py ( 这一步必然失败,是为了第三步取得url准备的.)
运行这行的时候,linux会停留在Downling ~~~~~这类似的上面.
这是因为你的这个目录下中没有setuptools-0.6c11-py2.4.egg东西.
3. wget http://pypi.python.org/packages/2.4/s/setuptools/setuptools-0.6c11-py2.4.egg
注意:第三步的url是根据第二步得到的url.
这时候你再运行第二步.之后再运行安装你前面不能够安装的软件.应该就解决了setuptools方面的问题了.
关键东西:是要准备好2个东西:ez_setup.py和setuptools-0.6c8-py2.4.egg.
准备完成后开始
apt-get -y install python-dev
wget http://cdnetworks-kr-1.dl.sourceforge.net/project/mysql-python/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz
tar -zxvf MySQL-python-1.2.3.tar.gz
cd 进去修改 mysql路径
vim site.cfg
mysql_config = /usr/local/mysql/bin/mysql_config #我myslq是源码包装的所以。
python setup.py install 这样基本是没有问题的
然后导入模块试试 import MySQLdb
ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
可能出现这个错误 好不用怕 :
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib
一个链接解决。
在导入出现下面问题
######################
/usr/lib/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-i686.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /usr/lib/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-i686.egg/_mysql.pyc, but /root/soft/MySQL-python-1.2.3 is being added to sys.path
原因是,install后MySQLdb模块已经被放到python的site-pachages目录中;但我在当前目录也存在相同的模块,所以可能会重复导入。只要切换到其他目录运行就可以了。
换个目录 成功了就。
<2>windows版本
网上搜索到一个http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe
安装后import MySQLdb会出现 DeprecationWarning: the sets module is deprecated 这样一个警告,google之
原因是2.6不知sets这个模块,不过已经添加了set内置函数。找到MySQLdb文件夹的中__init__.py,注释掉from sets import ImmutableSet class DBAPISet(ImmutableSet):添加class DBAPISet(frozenset):;找到converters.py注释掉from sets import BaseSet, Set。然后修改第45行和129行中的Set为set。
搞定。