设为首页收藏本站
查看: 96|回复: 0

[PHP] 安装MySQLdb时遇到报错的情况及解决方案

[复制链接]

论坛元老

Rank: 6Rank: 6

积分
34273
主题
17031
UID
1347
M币
67
贡献
17175

  • 发表于 2017-5-14 02:44:00 | 显示全部楼层 |阅读模式
    这篇文章主要介绍了Windows下安装python MySQLdb遇到的问题及解决方法,需要的朋友可以参考下
    片头语:因为工作需要,在CentOS上搭建环境MySQL+Python+MySQLdb,个人比较习惯使用Windows系统的操作习惯,对纯字符的OS暂时还不太习惯,所以,希望能在Windows系统上也搭建一个类似的环境,用于开发。下面介绍的是在Windows环境下编译MySQLdb的过程。补充一句:最近在网上搜索到一个MySQLdb的Windows安装包,使用起来会更方便一些,地址:http://www.codegood.com/archives/4
    或者到 http://www.jb51.net/softs/73369.html下载当然也可以到dev.mysql.com/downloads/connector/python/下载
    mysql-connector-python是MySQL官网提供的专门连接python的驱动程序;使用起来很方便。文件里面有很多程序实例供参考。
    手工编译MySQLdb的过程如下:
    下面列举出上面需要用到的软件的下载地址:
    MySQL - www.mysql.com/
    Python - www.python.org/
    MySQLdb - sourceforge.net/projects/mysql-python/
    1、安装MySQL,选择Custom,然后将“C Include Files / Lib Files”勾选上,如果使用Typical,则会出现问题(1),后面的配置也基本上都是默认选项,除了额外将"添加到系统路径"(Include Bin Directory in Windows PATH)这个复选框勾上。如果你对安装MySQL不是很清楚,可以从网上搜索一下,相关的文章很多,如下:http://rangyang163.blog.163.com/blog/static/37743758200881203744469/
    2、安装Python,也基本上默认的选项,只是把安装路径稍微改了一下。Python的默认安装路径是"C:/Python26",个人习惯将其改为"C:/Program Files/Python26"
    3、在安装MySQLdb之前必须安装setuptools,要不然会出现编译错误。
    Setuptools - http://pypi.python.org/pypi/setuptools
    默认安装这个工具即可...
    好了,可以正式开始安装MySQLdb了,我们下载的这个tar.gz是源码包,里面是没有安装程序的,需要先编译,再安装。
    (1)将MySQL-python-1.2.3.tar.gz解压到当前目录下,会出现一个MySQL-python-1.2.3文件夹;
    (2)WIN+R,打开运行对话框,输入cmd,打开MS-DOS,进入上面解压的那个文件夹;(前提是你得明白cd是什么命令 :-)....)
    (3)输入setup.py build开始编译...
    我在编译过程中遇到以下问题:
    1)问题: _mysql.c(34) : fatal error C1083: Cannot open include file: ‘config-win.h': No such file or directory
    error: command ‘”C:/Program Files/Microsoft Visual Studio 9.0/VC/BIN/cl.exe”‘ failed with exit status 2
    原因:原因是安装MySQL的时候没有安装C语言库。
    解决:重新运行MySQL的安装程序,选择Modify,把“C Include Files / Lib Files”勾选上,并安装。
    2)问题:Traceback (most recent call last):
    File "setup.py", line 15, in
    metadata, optiOns= get_config()
    File "C:/MySQL-python-1.2.3/setup_windows.py", line 7, in get_config
    serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, options['registry_key'])
    WindowsError: [Error 2] The system cannot find the file specified
    原因:MySQL for python 1.2.3仍然是在寻找MySQL5.0的版本
    解决:1、打开目录下site.cfg文件,修改最后一行为“registry_key = SOFTWARE/MySQL AB/MySQL Server 5.1”
    2、打开setup_windows.py文件,修改第七行为“serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE/MySQL AB/MySQL Server 5.1')”
    3)问题:build/temp.win32-2.7/Release/_mysql.pyd.manifest : general error c1010070: Failed to load and parse the manifest. The system cannot find the file specified.
    error: command ‘mt.exe' failed with exit status 31
    原因:路径发生变化?
    解决:打开“你的PYTHON安装目录/Lib/distutils/msvc9compiler.py”文件,找到“ld_args.append('/MANIFESTFILE:' + temp_manifest)”这行代码,将其改为“ld_args.append('/MANIFEST')”
    (4)当编译完成以后,就可以输入setup.py install了,现在终于大功告成了!
    可以在DOS环境下输入以下命令进行测试:
    C:/Users/Michael>python Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import MySQLdb >>>
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    在我站开通SVIP可同时获得17个站点VIP资源 立即登录 立即注册
    快速回复 返回顶部 返回列表