您的位置:首页 > 编程语言 > Python开发

Python MySQLdb Mac安装遇到的问题

2015-09-23 11:43 465 查看
Mac 下使用Python 连接Mysql 数据库,使用到模块MySQLdb,各种问题都出现,搜集整理下,最后发现最关键的还是Mac 下的Python 版本问题

前置条件:

1. 已经安装mysql 数据库,并且配置环境变量

建议使用:

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

这样建立软链接,可以快速访问

2. 确定Python 版本,下载对应的MySQLdb

3. 安装Gcc

4. 配置环境变量如下:

(添加Mysql 的路径,Mysql lib,Python 路径,Python 用多少位运行)

export PATH=$PATH:/usr/local/mysql/bin
export DYLD_LIBRARY_PATH=/usr/local/mysql/lib
export PYTHON_HOME=$PATH:System/Library/Frameworks/Python.framework/Versions/2.7/bin
export VERSIONER_PYTHON_PREFER_32_BIT=yes
export VERSIONER_PYTHON_PREFER_64_BIT=yes


安装步骤:

1. 下载对应的MySQLdb 文件

http://sourceforge.net/projects/mysql-python/

2. 解压文件,修改里面site.cfg

找到 #mysql_config = /usr/local/bin/mysql_config

井号去掉,并且修改自己的路径 mysql_config = /usr/local/mysql/bin/mysql_config

3. 打开命令行终端cd 到 刚才的解压目录

python setup.py clean

python setup.py build

python setup.py install

执行之后就会提示安装成功了,之后推出命令行,试试 import MySQLdb 看看是否成功,即可

安装过程出现的问题:


ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib



解决办法(建立一个软连接):

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


ImportError:dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so,2):nosuitable image found.Didfind:/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so:mach-o,but wrong architecture



解决办法:

检查mysql 是否是64 位的,Python 是否是64 位的模式

检查mac是否存在多个版本的Python,因为在安装MySQLdb 需要clean,build,install,

在 build 的过程中,可能会出现是build 的版本,与导入包的版本不一致 ,所以导致问题

Ps:

如果上述的方法都不行的话,请检查你的Python 是否是

System/Library/Frameworks/Python.framework/Versions/2.7/bin ,只有python 是System/Library 这个目录下的python ,才可以编译通过

另外python 建议使用32版本的,这样可以兼容更多的模块
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: