Windows xp 下安装MySQLdb
时间:2009-07-25 来源:应该早习惯
昨天在Windows XP下安装MySQLdb模块,安装了一天,弄得我很是郁闷,到晚上的时候终于安装成功。先将过程和结果记录下来。我的Python是2.6的。
1. mysql版本。首先我的mysql版本是4.1的。在安装mysql4.1,出现了很多的问题。Google了一下,现在mysql用的比较多是5.1版本,最终我就下了一个MySQL5.1.34ForWindows安装版x32.rar(这个迅雷上就有)。安装mysql主要注意的是在:
(1)在Windows防火墙中的“例外”添加tcp3306端口,否则连不上;
(2)如果时卸载后再装,最后的办法是将mysql清理干净,并为了保险起见,在命令下停止mysql服务,方法是net stop mysql。
这两个问题是我经常碰到的。
2. MySQLdb版本。MySQL-python-1.2.2.win32-py2.6.exe 。因为我用的是Python版本是2.6,在http://sourceforge.net/projects/mysql-python,就找不到对应的版本,我就下了MySQL-python-1.2.3c1.tar.gz来安装。这个过程很郁闷,因为出现四大主要的错误。
(1)缺少setuptools模块。这个很好办,去下载一个就是的。安装好。
(2)然后是安装MySQLdb。在Python setup.py install后,出现serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, options['registry_key'])
WindowsError: [Error 2]错误。按照http://alva.tabex.org/2009/06/20/python-26-mysqldb-12-mysql51%E5%AE%89%E8%A3%85/所示的方法去解决(那个时候我的MySQL版本是4.1),还是出现(3)的错误。我看他用的是MySQL5.1,所以我不管了,直接下了MySQL5.1.34ForWindows安装版x32.rar来用,安装之,这个过程就出现了1.所示的各中状况,最后终于解决了。
(3)然后import MySQLdb。出现File "C:\Python26\lib\site-packages\MySQLdb\__init__.py", line 19, in <module>
ImportError: DLL load failed: 找不到指定的模块。查找了一下各位高人的经验,发现是缺少2个dll文件分别为 libguide40.dll和libmmd.dll。这两个文件迅雷上就有,下载之,然后复制到 WINDOWS\system32 。这个问题就这样解决了。 (4)然后import MySQLdb。再出现sys:1: DeprecationWarning: the sets module is deprecated 的错误,再次搜索,原因是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。 最终所有问题解决了,导入成功。已经耗费了我一整天时间。
ImportError: DLL load failed: 找不到指定的模块。查找了一下各位高人的经验,发现是缺少2个dll文件分别为 libguide40.dll和libmmd.dll。这两个文件迅雷上就有,下载之,然后复制到 WINDOWS\system32 。这个问题就这样解决了。 (4)然后import MySQLdb。再出现sys:1: DeprecationWarning: the sets module is deprecated 的错误,再次搜索,原因是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。 最终所有问题解决了,导入成功。已经耗费了我一整天时间。
相关阅读 更多 +