文档章节

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

干干
 干干
发布于 2018/09/10 11:11
字数 640
阅读 86
收藏 0

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

© 著作权归作者所有

干干
粉丝 4
博文 118
码字总数 32015
作品 0
福州
程序员
私信 提问
Mac下安装MySQLdb模块

在虚拟机上面进行Python DjangoWeb开发真的不舒服,特别是遇到一台很卡的苹果电脑,真的感觉时间多的很慢,而且开发起来特别慢,自己深有体会,所以自己就尝试不使用VMware Fusion和Virtual...

博行天下
2017/11/23
0
0
Mac下摆脱基于虚拟机安装Ubuntu开发DjangoWeb

在虚拟机上面进行Python DjangoWeb开发真的不舒服,特别是遇到一台很卡的苹果电脑,真的感觉时间多的很慢,而且开发起来特别慢,自己深有体会,所以自己就尝试不使用VMware Fusion和Virtual...

博行天下
2017/11/23
0
0
部署天兔监控软件

安装XAMPP Xampp下载地址:https://www.apachefriends.org/download.html 注意你的版本号,高版本的XAMPP中可能不是Mysql而是MariaDB [root@HE3home]# chmod +x xampp-linux-x64-1.8.2-5-in......

被啃的窝瓜
2017/05/12
0
0
天兔(Lepus)数据库监控系统快速安装部署

天兔(Lepus)数据库监控系统安装 实战 Part1:写在最前 Lepus安装需要Lamp环境,Lamp环境的安装个人认为比较费劲,XAMPP的一键部署LAMP环境省心省力, lepus官网手册也建议采用XAMPP的方式安...

逆袭之IT
2017/05/09
0
0
天兔(Lepus)数据库监控系统快速安装部署

天兔(Lepus)数据库监控系统安装 实战 Part1:写在最前 Lepus安装需要Lamp环境,Lamp环境的安装个人认为比较费劲,XAMPP的一键部署LAMP环境省心省力, lepus官网手册也建议采用XAMPP的方式安...

dbapower
2016/05/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Security 自定义登录认证(二)

一、前言 本篇文章将讲述Spring Security自定义登录认证校验用户名、密码,自定义密码加密方式,以及在前后端分离的情况下认证失败或成功处理返回json格式数据 温馨小提示:Spring Security...

郑清
44分钟前
5
0
php yield关键字以及协程的实现

php的yield是在php5.5版本就出来了,而在初级php界却很少有人提起,我就说说个人对php yield的理解 Iterator接口 在php中,除了数组,对象可以被foreach遍历之外,还有另外一种特殊对象,也就是继承...

冻结not
57分钟前
4
0
servlet请求和响应的过程

本文转载于:专业的前端网站➥servlet请求和响应的过程 1.加载 Servlet类被加载到Java虚拟机中,并且实例化。在这个过程中,web容器(例如tomcat)会调用Servlet类的公开无参构造函数,产生一...

前端老手
57分钟前
4
0
golang 1.13 errors 包来了,不用写“err 气功波”代码

引 这篇是对 errors 包 的姿势挖掘 气功波错误代码 从 http.Get()返回的错误 判断 syscall.ECONNREFUSED 错误.以前要对 go 标准库 error 结构有点熟悉,才能写出下面的代码 func CmdErr(err ...

guonaihong
今天
32
0
喜玛拉雅已听书单

时间倒序排 书名 作者 状态 唐砖 孑与2 进行中 死灵之书(克苏鲁神话合集) 阿卜杜拉·阿尔哈萨德 进行中 赡养人类 刘慈欣 完结 赡养上帝 刘慈欣 完结 中国太阳 刘慈欣 完结 中国太阳 刘慈欣...

Alex_Java
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部