windows下python之mysqldb模块安装方法

windows下python之mysqldb模块安装方法,第1张

概述之所以会写下这篇日志,是因为安装的过程有点虐心。目前这篇文章是针对windows *** 作系统上的mysqldb的安装。安装python的mysqldb模块,首先当然是找一些官方的网站去下载:https://pypi.python.org/pypi/MySQL-python

之所以会写下这篇日志,是因为安装的过程有点虐心。目前这篇文章是针对windows *** 作系统上的MysqLdb的安装。安装python的MysqLdb模块,首先当然是找一些官方的网站去下载:https://pypi.python.org/pypi/MysqL-python。下载后,cmd进入MysqL-python-1.2.3文件夹,按常规的执行python setup.py install 命令安装此模块,然后就报错了:

   这个报错很明显,print

  进行python前,应该先确定当前MysqLdb的各个版本都支持python的哪些版本。部分截图如下:

MysqL-python1.2.5是当前最新的一个版本,这个版本支持MysqL3.23-5.5,python2.4-2.7的,不支持python3系列。介于安装时当前系统的python是3.7.11的,在卸载的时候,报错了:

there is a problem with this windows installer package.A programe run as part of the setupdID not finish as expected.Contact your support personnel or package vendor.

估计这个问题可能是文件缺损导致的,于是尝试了网上说的一些解决方法

方法一:重新运行安装程序,选择repair,修复完再卸载。(结果:无用,repair的时候报另外一个网络异常错误)
方法二:安装一个其他版本的python,再卸载python3.7.11.(结果:无用,安装新的版本产生的文件不会修复老版本文件的缺失)
方法三:删除注册表的信息,或者使用Your Unin-staller!强制删除python3.7.11.(结果:终于给删除成功了,

ps:http://wenku.baidu.com/link?url=dujEO65nXySNvwUyDJVR5kmbrlcqp7WsvhLFGN_7L5q-58EoVjyw4DjiTS_J5PomPzgvdG69uulXDI8TbMgJlXk9Y-ayHs8qOD3Z3AomBU7,链接里有产品注册)

或者这篇文章:http://www.jb51.net/softjc/500307.html

以上3个解决方法只有第三个最暴力的方法解决我的问题,前面2种有些网友都能使用, *** 作后也能解决问题。卸载高版本的python后,终于装上了低版本的python。

接着安装MysqLdb,然后又报了一个错:缺少c语言的编译环境,需要去下载一个VC环境。这个其实挺好办,错误提示里本来就有下载链接(忘记截图了,抱歉)https://www.microsoft.com/en-us/download/confirmation.aspx?id=44266,下载好VCForPython27.msi安装就不报这错了。但是报另一个错。(又忘了截图),然后觉得很有必要在MysqL-python-1.2.3文件夹下查看下readme了,里面一般都会记载着怎么安装和怎么使用。部分关于windows系统安装的重要信息翻译后截图如下:

windows.......我不做windows。 但是如果有人给我提供了一个包windows,我会使它可用。 不要问我有关windows的帮助因为我不能帮助你。一般来说,运行setup.py与上面类似:: C:\ ...> python setup.py install C:\ ...> python setup.py bdist_wininst后面的示例应该构建一个windows安装程序包,如果你有正确的工具。 无论如何,你必须有一个C编译器。另外,你必须设置一个环境变量(MysqLroot)这是MysqL安装的路径。 在理论上,它会的可能从注册表中获取这些信息,但是像我说的,我不做windows,但我会接受这样做的补丁。在windows上,您肯定必须编辑site.cfg,因为有在MysqL包中没有MysqL_config。@H_404_38@

然后开始默默的安装MysqL,去官网下了个5.5.7版本的,安装验证连接DB时一直报错:ERROR 1045 (28000): Access denIEd for user 'MysqL'@'localhost' (using password: NO)

这个百度下,在安装文件夹的my.ini里增加skip-grant-tables就可以了

[MysqLd]skip-grant-tables# The TCP/IP Port the MysqL Server will Listen onport=3306@H_404_38@

然后就能正常连接DB并访问DB了,这下我觉得应该没问题,然而安装时,又报了一个错:

E:\Code\Python\MysqL>setup.py install Traceback (most recent call last):  file "E:\Code\Python\MysqL\setup.py",line 15,in <module>  Metadata,options = get_config()  file "E:\Code\Python\MysqL\setup_windows.py",line 7,in get_config  serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,options['registry_key']) windowsError: [Error 2]@H_404_38@

可行的解决方法:打开setup_windows.py,然后将注册表 *** 作的两行代码注释掉,并添加一行代码:

#serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,options['registry_key'])  #MysqL_root,dummy = _winreg.queryValueEx(serverKey,'Location')  MysqL_root = "C:\Program files\MysqL\MysqL Server 5.5" #MysqL目录 @H_404_38@

然后接着安装,又报了一个错:

可行的解决方法:下载MysqL Connector(地址:http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-6.0.2-win32.msi/from/http://ftp.jaist.ac.jp/pub/mysql/ ),然后修改setup_windows.py的代码:

#serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,'Location')  MysqL_root = "C:\Program files\MysqL\MysqL Connector C 6.0.2" #MysqL Connector C 6.0.2目录@H_404_38@

接着执行安装,天啊,终于成功了。

import MysqLdbif __name__ == "__main__": test= MysqLdb.connect("localhost","root","root1234","MysqL" ) cur = test.cursor() cur.execute('show databases;') for data in cur.fetchall():  print data@H_404_38@

打印结果如下:

D:\Python27\python.exe D:/unTitled/MysqL_test.py('information_schema',)('MysqL',)('performance_schema',)('test',)Process finished with exit code 0@H_404_38@

之前学习RF的时候安装过第三方库却从未如此虐心过,也有可能当时使用的本来就是低版本的python,而且当时机器上有各种程序的编译环境,但是暴露出一个问题,就是安装三方库时候没有一套通用的方法帮助快速安装,基于狗血的经历,特做以下小结:
1、安装前看下安装文件里的read me和下载页面的一些使用说明(一般作者都是会编写安装手册和test文档的,无论是哪类 *** 作系统多多少少都是会介绍的)。

2、确定python三方库支持python的哪个版本,目前看python2.7.11还是挺好的。

3、确定三方库安装时需要哪些其他的环境和依赖的软件。

总结

以上是内存溢出为你收集整理的windows下python之mysqldb模块安装方法全部内容,希望文章能够帮你解决windows下python之mysqldb模块安装方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1201625.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存