Windows下安裝python MySQLdb遇到的問(wèn)題及解決方法
片頭語(yǔ):因?yàn)楣ぷ餍枰?,在CentOS上搭建環(huán)境MySQL+Python+MySQLdb,個(gè)人比較習(xí)慣使用Windows系統(tǒng)的操作習(xí)慣,對(duì)純字符的OS暫時(shí)還不太習(xí)慣,所以,希望能在Windows系統(tǒng)上也搭建一個(gè)類似的環(huán)境,用于開(kāi)發(fā)。下面介紹的是在Windows環(huán)境下編譯MySQLdb的過(guò)程。補(bǔ)充一句:最近在網(wǎng)上搜索到一個(gè)MySQLdb的Windows安裝包,使用起來(lái)會(huì)更方便一些,地址:http://www.codegood.com/archives/4
或者到 http://www.dbjr.com.cn/softs/73369.html下載當(dāng)然也可以到https://dev.mysql.com/downloads/connector/python/下載
mysql-connector-python是MySQL官網(wǎng)提供的專門(mén)連接python的驅(qū)動(dòng)程序;使用起來(lái)很方便。文件里面有很多程序?qū)嵗﹨⒖肌?/p>
手工編譯MySQLdb的過(guò)程如下:
下面列舉出上面需要用到的軟件的下載地址:
MySQL - http://www.mysql.com/ <個(gè)人使用的MySQL的版本:mysql-essential-5.1.53-win32.msi,也許您下載的時(shí)候已經(jīng)有新的版本了。>
Python - http://www.python.org/ <個(gè)人使用的Python版本:python-2.6.6.msi>
MySQLdb - http://sourceforge.net/projects/mysql-python/ <個(gè)人使用的MySQLdb版本:MySQL-python-1.2.3.tar.gz>
1、安裝MySQL,選擇Custom,然后將“C Include Files / Lib Files”勾選上,如果使用Typical,則會(huì)出現(xiàn)問(wèn)題(1),后面的配置也基本上都是默認(rèn)選項(xiàng),除了額外將"添加到系統(tǒng)路徑"(Include Bin Directory in Windows PATH)這個(gè)復(fù)選框勾上。如果你對(duì)安裝MySQL不是很清楚,可以從網(wǎng)上搜索一下,相關(guān)的文章很多,如下:http://rangyang163.blog.163.com/blog/static/37743758200881203744469/
2、安裝Python,也基本上默認(rèn)的選項(xiàng),只是把安裝路徑稍微改了一下。Python的默認(rèn)安裝路徑是"C:/Python26",個(gè)人習(xí)慣將其改為"C:/Program Files/Python26"
3、在安裝MySQLdb之前必須安裝setuptools,要不然會(huì)出現(xiàn)編譯錯(cuò)誤。
Setuptools - http://pypi.python.org/pypi/setuptools <將滾動(dòng)條向下拖,很快,就可以看到一串下載地址,個(gè)人使用的是:setuptools-0.6c11.win32-py2.6.exe,這是因?yàn)槲沂褂玫腜ython版本是2.66>
默認(rèn)安裝這個(gè)工具即可...
好了,可以正式開(kāi)始安裝MySQLdb了,我們下載的這個(gè)tar.gz是源碼包,里面是沒(méi)有安裝程序的,需要先編譯,再安裝。<其實(shí)只要看看README就明白了。>
(1)將MySQL-python-1.2.3.tar.gz解壓到當(dāng)前目錄下,會(huì)出現(xiàn)一個(gè)MySQL-python-1.2.3文件夾;
(2)WIN+R,打開(kāi)運(yùn)行對(duì)話框,輸入cmd,打開(kāi)MS-DOS,進(jìn)入上面解壓的那個(gè)文件夾;(前提是你得明白cd是什么命令 :-)....)
(3)輸入setup.py build開(kāi)始編譯...<額外補(bǔ)充一點(diǎn),在編譯MySQLdb時(shí)需要C編譯器,如果已經(jīng)安裝了MSVC,則直接編譯即可。如果需要指定編譯器,可以使用compiler開(kāi)關(guān)。如--compiler=mingw32則使用GCC作為編譯器,不過(guò),前提是你需要安裝相應(yīng)的編譯器,并配置好環(huán)境變量才行。>
我在編譯過(guò)程中遇到以下問(wèn)題:
1)問(wèn)題: _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的時(shí)候沒(méi)有安裝C語(yǔ)言庫(kù)。
解決:重新運(yùn)行MySQL的安裝程序,選擇Modify,把“C Include Files / Lib Files”勾選上,并安裝。
2)問(wèn)題:Traceback (most recent call last):
File "setup.py", line 15, in <module>
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、打開(kāi)目錄下site.cfg文件,修改最后一行為“registry_key = SOFTWARE/MySQL AB/MySQL Server 5.1”
2、打開(kāi)setup_windows.py文件,修改第七行為“serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE/MySQL AB/MySQL Server 5.1')”
3)問(wèn)題: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
原因:路徑發(fā)生變化?
解決:打開(kāi)“你的PYTHON安裝目錄/Lib/distutils/msvc9compiler.py”文件,找到“l(fā)d_args.append('/MANIFESTFILE:' + temp_manifest)”這行代碼,將其改為“l(fā)d_args.append('/MANIFEST')”
(4)當(dāng)編譯完成以后,就可以輸入setup.py install了,現(xiàn)在終于大功告成了!
可以在DOS環(huán)境下輸入以下命令進(jìn)行測(cè)試:
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 >>>
這樣就說(shuō)明MySQLdb已經(jīng)成功安裝了!接下來(lái),就可以學(xué)習(xí)Python+MySQLdb+MySQL了,祝你愉快!
相關(guān)文章
用pycharm開(kāi)發(fā)django項(xiàng)目示例代碼
這篇文章主要介紹了用pycharm開(kāi)發(fā)django項(xiàng)目示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-10-10在Python的Django框架中創(chuàng)建語(yǔ)言文件
這篇文章主要介紹了在Python的Django框架中創(chuàng)建語(yǔ)言文件的方法,以語(yǔ)言代碼來(lái)表示語(yǔ)言區(qū)域種類,需要的朋友可以參考下2015-07-07Python無(wú)法用requests獲取網(wǎng)頁(yè)源碼的解決方法
爬蟲(chóng)獲取信息,很多時(shí)候是需要從網(wǎng)頁(yè)源碼中獲取鏈接信息的,下面這篇文章主要給大家介紹了關(guān)于Python無(wú)法用requests獲取網(wǎng)頁(yè)源碼的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07關(guān)于阿里云oss獲取sts憑證 app直傳 python的實(shí)例
今天小編就為大家分享一篇關(guān)于阿里云oss獲取sts憑證 app直傳 python的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08使用Python給PDF添加目錄書(shū)簽的實(shí)現(xiàn)方法
有時(shí)下載到掃描版的 PDF 是不帶書(shū)簽?zāi)夸浀?這樣閱讀起來(lái)很不方便,下面通過(guò) python 實(shí)現(xiàn)一個(gè)半自動(dòng)化添加書(shū)簽?zāi)夸浀哪_本,文中通過(guò)代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-10-10如何使用python-opencv批量生成帶噪點(diǎn)噪線的數(shù)字驗(yàn)證碼
這篇文章主要介紹了如何使用python-opencv批量生成帶噪點(diǎn)噪線的數(shù)字驗(yàn)證碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Python使用ClickHouse的實(shí)踐與踩坑記錄
這篇文章主要介紹了Python使用ClickHouse的實(shí)踐與踩坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05