[Python] MySQLdb(即 MySQL-python 包)在 OS X 中安裝指南


  安裝環境:OS X 操作系統,Python 2.7.3。

  MySQLdb 其實包含在 MySQL-python 包中,因此無論下載還是在 pip 中 search,都應該是搜尋 MySQL-python。

  以下將說明 MySQLdb 兩種常見的安裝方式,下載安裝或者 pip 安裝 MySQL-python。 

 

 下載MySQLdb

 

  在 SourceForge 可以下載 MySQL-python-1.2.4b4.tar,下載后解壓,然后在終端 Terminal 中執行以下命令:

new-host-3:~ iFantastic$ cd /Users/iFantastic/Downloads/MySQL-python-1.2.4b4

new-host-3:MySQL-python-1.2.4b4 iFantastic$ python setup.py install

 

 使用 pip 安裝 MySQLdb

 

  在終端中執行:

new-host-3:~ iFantastic$ pip install MySQL-python

  

  無論是在線安裝還是下載安裝,此時你可能會遇到第一個錯誤提示:

EnvironmentError: mysql_config not found

  

  建議使用pip安裝,因為我從 sourceforge 下載的版本居然不如 pip 中的新。如果想要升級 mysql-python 版本,可以使用以下命令:

$ easy_install MySQL-python --upgrade

  

  [注意]如果你沒有按照下文解決安裝中的錯誤提示,那么升級也會因為同樣的錯誤原因而失敗。

 

 解決 mysql_config not found 錯誤

  

  在默認方式安裝 Mac 版 MySql 時,會在 /usr/local/mysql/bin 目錄下生成 mysql_config 文件。

  因此下載安裝時的解決辦法為:在 MySQL-python 的安裝包中找到 site.cfg 文件,打開它,找到以下內容:

# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
# mysql_config = /usr/local/bin/mysql_config

  

  將最后一句句首井號去掉,並修改為:

mysql_config = /usr/local/mysql/bin/mysql_config

  

  然后執行:

$ python setup.py install

  

  一般說來,此時安裝可以完成,但仍有問題,下文會繼續闡述。

  使用 pip 安裝時沒有辦法修改 site.cfg 文件,因此可以通過修改 OS X 的系統環境變量來解決找不到 mysql_config 的錯誤。

  修改 OS X 環境變量:打開終端,在終端中使用 vim 打開 “~/.bash_profile”,如果沒有安裝 vim,那就顯示隱藏文件用文本編輯器打開,具體操作這里就不復述了。在 .bash_profile 中添加以下內容:

PATH="/usr/local/mysql/bin:${PATH}"
export PATH
export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/
export VERSIONER_PYTHON_PREFER_64_BIT=no
export VERSIONER_PYTHON_PREFER_32_BIT=yes

  

  其中 VERSIONER_PYTHON_PREFER_64_BIT 和 VERSIONER_PYTHON_PREFER_64_BIT 根據自己安裝的 MySQL 進行選擇。

  另外再提供一個 pip 安裝時找不到 mysql_config 的解決方法(我沒有驗證),在終端中輸入以下命令:

$ sudo ln -s /usr/local/mysql/bin/* /usr/bin

  

  好了,到這里,MySQL-python 包應該基本順利安裝。

 

 解決 Reason: image not found 錯誤

  

  安裝完 MySQL-python 包后,讓我們 import MySQLdb,此時出現一個錯誤,錯誤最后一行寫着 Reason: image not found。

  解決方法是在終端執行:

$ sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
$ sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql

  

  之后重啟 idle,成功導入 MySQLdb。

 

  PS: 在 Ubuntu 下使用 pip 安裝 MySQL-python 同樣會出現 mysql_config no found 的錯誤提示,建議使用 sudo apt-get install python-mysqldb 來進行安裝,這樣直接可以安裝成功。

 

  如果使用 MacPorts 安裝 MySQL,MacPorts 安裝的源碼包都存放在 /opt 目錄下,安裝完 MySQL 后,使用 port select --list mysql 查看一下當前啟用的 MySQL 版本(初次安裝完畢后應該是沒有啟用任何版本的 MySQL),然后使用 port select --set mysql mysql_you_selected 來設置啟用的 MySQL 版本,之后再使用 pip 安裝則無需擔心 mysql-config 的問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM