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

本小妞迷上赌 提交于 2019-11-29 02:28:04

    刚学习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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!