您的位置:首页 > 数据库 > MySQL

Mac 之xampp 安装MySQLdb【非Pip安装】

2018-09-10 11:11 357 查看
刚学习python,到数据库这块,需要安装一个MySQLdb。记录下碰到的问题~~~
我的环境:Mac High Sierra 10.13.6 + python 2.7 + XAMPP。

特此说明:以下安装只针对本机以及本人碰到的问题,不一样对任何人通用~~~本人也是装了块一整天才成功

本机安装了两个版本的pyhton,如下。

ygdeMacBook-Pro:MySQL-python-1.2.5 yg$ python --version
Python 2.7.10
ygdeMacBook-Pro:MySQL-python-1.2.5 yg$ python3 --version
Python 3.7.0
ygdeMacBook-Pro:MySQL-python-1.2.5 yg$

由于我本机是已经安装了xampp,不想再安装mysql,在google找到如下这篇文章:

Install MySQL for python on Mac OS 10.9 with XAMPP ====>本篇文章主要参考!!!

这里我主要列下安装步骤

从官网下载MySQLdb安装包 http://sourceforge.net/projects/mysql-python/files/latest/download
并且解压为MySQL-python-1.2.5。

更改bash_profile配置文件,
1、vim ~/.bash_profile
2、export DYLD_LIBRARY_PATH=/Applications/XAMPP/xamppfiles/lib
export PATH=/Applications/XAMPP/xamppfiles/bin/:$PATH
3、source .bash_profile

修改 MySQL-python-1.2.5文件夹里面的 site.cfg,并找到 mysql_config(在第13行)
修改为:mysql_config=/Applications/XAMPP/xamppfiles/bin/mysql_config

在MySQL-python-1.2.5文件目录,打开终端输入以下命令
sudo python setup.py clean
sudo python setup.py build
sudo python setup.py install


这里编译还有可能出现异常
_mysql.c:44:10: fatal error: 'my_config.h' file not found

这是因为XAMPP等,如果是IDE安装的话,没有编译环境,所以需要单独安装mysql-connector-c或者重新安装mysql
brew install mysql-connector-c


安装完成后,在python文件里面测试一下
>>> import MySQLdb
>>> MySQLdb.apilevel
如果出现如下错误 ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.9-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib
Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.9-intel.egg/_mysql.so
Reason: image not found
This is because the mysqllibrary (of XAMPP) could not be found. You should make a link of mysql libray file to your /usr/lib :
sudo ln -s /Applications/XAMPP/xamppfiles/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib


如果 出现 Operation not permitted ,咋整???
参考这个:python操作MySQL数据库出错Reason: unsafe use of relative rpath libmysqlclient.18.dylib
# /Users/yg/.python-eggs/MySQL_python-1.2.5-py2.7-macosx-10.13-intel.egg-tmp/_mysql.so
把上面这个文件_mysql.so贴到/Library/Python/2.7/site-packages/目录下,然后执行如下命令即可

sudo install_name_tool -change libmysqlclient.18.dylib \
/Applications/XAMPP/xamppfiles/lib/libmysqlclient.18.dylib \
/Library/Python/2.7/site-packages/_mysql.so


参考:mac安装mysqldb-Python
学习Python on mac©️操作mysql
OS X 10.11 下解决Python-MysqlDB无法使用的问题
Python mysqldb: Library not loaded: libmysqlclient.18.dylib
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  XAMPP Mac OS X Python MySQL pip