搜尋
首頁資料庫mysql教程python之mysqldb模組在windows下安裝方法

python之mysqldb模組在windows下安裝方法

Sep 08, 2017 am 11:32 AM
pythonwindows

這篇文章主要介紹了windows下python之mysqldb模組安裝方法,需要的朋友可以參考下

之所以會寫下這篇日誌,是因為安裝的過程有點虐心。目前這篇文章是針對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_J5PomPzgvdG69uulXDI8TbMgJlXkY15PomPzgvdG69uulXDI8TbMgJlXkY ://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。

然後開始默默的安裝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 on
port=3306

然後就能正常連接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[&#39;registry_key&#39;]) 
WindowsError: [Error 2]

可行的解決方法:開啟setup_windows.py,然後將登錄操作的兩行程式碼註解掉,並新增一行程式碼:

#

#serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, options[&#39;registry_key&#39;]) 
 #mysql_root, dummy = _winreg.QueryValueEx(serverKey,&#39;Location&#39;) 
 mysql_root = "C:\Program Files\MySQL\MySQL Server 5.5" #MySQL目录

然後接著安裝,又報了一個錯誤:

可行的解決方法:下載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, options[&#39;registry_key&#39;]) 
 #mysql_root, dummy = _winreg.QueryValueEx(serverKey,&#39;Location&#39;) 
 mysql_root = "C:\Program Files\MySQL\MySQL Connector C 6.0.2" #MySQL Connector C 6.0.2目录

接著執行安裝,天啊,終於成功了。

import MySQLdb

if __name__ == "__main__":
 test= MySQLdb.connect("localhost","root","root1234","mysql" )
 cur = test.cursor()
 cur.execute(&#39;show databases;&#39;)
 for data in cur.fetchall():
  print data

列印結果如下:

#

D:\Python27\python.exe D:/untitled/mysql_test.py
(&#39;information_schema&#39;,)
(&#39;mysql&#39;,)
(&#39;performance_schema&#39;,)
(&#39;test&#39;,)

Process finished with exit code 0

之前學習RF的時候安裝過第三方函式庫卻從未如此虐心過,也有可能當時使用的本來就是低版本的python,而且當時機器上有各種程式的編譯環境,但是暴露出一個問題,就是安裝三方庫時候沒有一套通用的方法幫助快速安裝,基於狗血的經歷,特做以下小結:

1、安裝前看下安裝文件裡的read me和下載頁面的一些使用說明(一般作者都是會編寫安裝手冊和test文檔的,無論是哪類作業系統多多少少都是會介紹的)。


2、確定python三方函式庫支援python的哪個版本,目前看python2.7.11還挺好的。

3、確定三方庫安裝時需要哪些其他的環境和依賴的軟體。

以上是python之mysqldb模組在windows下安裝方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
MySQL中有哪些不同的存儲引擎?MySQL中有哪些不同的存儲引擎?Apr 26, 2025 am 12:27 AM

mysqloffersvariousStorageengines,每個suitedfordferentusecases:1)InnodBisidealForapplicationsNeedingingAcidComplianCeanDhighConcurncurnency,supportingtransactionsancions and foreignkeys.2)myisamisbestforread-Heavy-Heavywyworks,lackingtransactionsactionsacupport.3)記憶

MySQL中有哪些常見的安全漏洞?MySQL中有哪些常見的安全漏洞?Apr 26, 2025 am 12:27 AM

MySQL中常見的安全漏洞包括SQL注入、弱密碼、權限配置不當和未更新的軟件。 1.SQL注入可以通過使用預處理語句防止。 2.弱密碼可以通過強制使用強密碼策略避免。 3.權限配置不當可以通過定期審查和調整用戶權限解決。 4.未更新的軟件可以通過定期檢查和更新MySQL版本來修補。

您如何確定MySQL中的慢速查詢?您如何確定MySQL中的慢速查詢?Apr 26, 2025 am 12:15 AM

在MySQL中識別慢查詢可以通過啟用慢查詢日誌並設置閾值來實現。 1.啟用慢查詢日誌並設置閾值。 2.查看和分析慢查詢日誌文件,使用工具如mysqldumpslow或pt-query-digest進行深入分析。 3.優化慢查詢可以通過索引優化、查詢重寫和避免使用SELECT*來實現。

如何監視MySQL Server的健康和性能?如何監視MySQL Server的健康和性能?Apr 26, 2025 am 12:15 AM

要監控MySQL服務器的健康和性能,應關注系統健康、性能指標和查詢執行。 1)監控系統健康:使用top、htop或SHOWGLOBALSTATUS命令查看CPU、內存、磁盤I/O和網絡活動。 2)追踪性能指標:監控查詢每秒數、平均查詢時間和緩存命中率等關鍵指標。 3)確保查詢執行優化:啟用慢查詢日誌,記錄並優化執行時間超過設定閾值的查詢。

比較和對比Mysql和Mariadb。比較和對比Mysql和Mariadb。Apr 26, 2025 am 12:08 AM

MySQL和MariaDB的主要區別在於性能、功能和許可證:1.MySQL由Oracle開發,MariaDB是其分支。 2.MariaDB在高負載環境中性能可能更好。 3.MariaDB提供了更多的存儲引擎和功能。 4.MySQL採用雙重許可證,MariaDB完全開源。選擇時應考慮現有基礎設施、性能需求、功能需求和許可證成本。

MySQL的許可與其他數據庫系統相比如何?MySQL的許可與其他數據庫系統相比如何?Apr 25, 2025 am 12:26 AM

MySQL使用的是GPL許可證。 1)GPL許可證允許自由使用、修改和分發MySQL,但修改後的分發需遵循GPL。 2)商業許可證可避免公開修改,適合需要保密的商業應用。

您什麼時候選擇InnoDB而不是Myisam,反之亦然?您什麼時候選擇InnoDB而不是Myisam,反之亦然?Apr 25, 2025 am 12:22 AM

選擇InnoDB而不是MyISAM的情況包括:1)需要事務支持,2)高並發環境,3)需要高數據一致性;反之,選擇MyISAM的情況包括:1)主要是讀操作,2)不需要事務支持。 InnoDB適合需要高數據一致性和事務處理的應用,如電商平台,而MyISAM適合讀密集型且無需事務的應用,如博客系統。

在MySQL中解釋外鍵的目的。在MySQL中解釋外鍵的目的。Apr 25, 2025 am 12:17 AM

在MySQL中,外鍵的作用是建立表與表之間的關係,確保數據的一致性和完整性。外鍵通過引用完整性檢查和級聯操作維護數據的有效性,使用時需注意性能優化和避免常見錯誤。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。