1.首先实现命令行下可运行mysql

         这一部分网上有一位大神说的已经很清楚了,直接引用过来,多谢哈。引用:http://www.lihui.info/mac-pydev-mysqldb/
          

在mac os上安装MySQLdb,遇到了很多问题,总结一下:

首先,如果用sudo easy_install mysql-python命令安装,基本上不会成功的,原因有两个:一是找不到mysql_config位置,二是现在基本上安装的是64位的系统和64位的python,和默认的32位安装包冲突。

所以只能自己去下载http://sourceforge.net/projects/mysql-python/files/,我下载的是MySQL-python-1.2.4b4.tar.gz。

解压后,修改site.cfg,其中注释了一行:

  1. mysql_config = /usr/local/mysql/bin/mysql_config

把注释去掉,路径改为你安装的mysql对应的位置。

然后命令行进入解压的MySQL-python-1.2.4b4目录,执行sudo python setup.py install进行安装。

安装过程中又遇到很多问题,然后在网上找到了两个解决方案。但是这样安装还是会有问题,因为我使用eclipse+pydev的开发环境,这个环境还是不能使用MySQLdb。但是用这两个解决方法,可以在命令行下 import MySQLdb了,所以也记下来看看将来有没更完美的解决方法。

第一个问题是安装过程提示:Library not loaded: libmysqlclient.18.dylib

根据http://blog.sina.com.cn/s/blog_68f3bc280100supn.html,要么在环境变量添加export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/" 要么就软链接,在命令行里执行:

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

第二个问题是安装过程提示:no suitable image found.Did find:/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

根据http://www.liuhuadong.com/archives/1628,可以这样解决:

在/Users/你的用户名/ 目录下编辑或添加隐藏文件.bash_profile,添加环境变量:

  1. PATH="/usr/local/mysql/bin:${PATH}"
  2. export PATH
  3. export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/
  4. export VERSIONER_PYTHON_PREFER_64_BIT=yes
  5. export VERSIONER_PYTHON_PREFER_32_BIT=yes

然后再在命令行进入解压的MySQL-python-1.2.4b4目录,输入:

  1. sudo python setup.py build
  2. sudo python setup.py install

重新编译和执行安装。

这样以后在命令行下执行import MySQLdb就没有问题

2.pydev中的配置

      前提是完成了上面的步骤  
     
      首先要打开preference-pydev-interpreter-python中,点击autoconfig勾选上有mysql的那个包,重新导入。
      这时候添加import MySQLdb虽然不报错,但是一旦运行,就会报错:

Library not loaded: libmysqlclient.18.dylib   Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so

解决方案是在shell里执行(注意改路径):

sudo install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib  /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so

3.测试

    在shell里输入以下代码测试下是否链接成功
import MySQLdbtry:conn=MySQLdb.connect(host='localhost',user='root',passwd='root',db='test',port=3306)cur=conn.cursor()cur.execute('select * from mytable')results=cur.fetchall()for r in results:print rcur.close()conn.close()
except MySQLdb.Error,e:print "Mysql Error %d: %s" % (e.args[0], e.args[1])

输出结果,数据库查询成功:

pydev-python 链接mysql数据库(mac系统)相关推荐

  1. mac perl dbd mysql_perl 链接mysql数据库 mac 系统

    perl -v mac 系统自带 安装mysql DBI use strict; use DBI; my $host = "localhost"; # 主机地址 my $drive ...

  2. Python --链接MYSQL数据库与简单操作 含SSH链接

    项目是软硬件结合,在缺少设备的情况,需要通过接口来模拟实现与设备的交互,其中就需要通过从数据库读取商品的ID信息 出于安全考虑  现在很多数据库都不允许通过直接访问,大多数是通过SSH SSH : 数 ...

  3. 用pymysql 建立python链接mysql数据库02

    昨天下载完mysql,并且安装好了,看下版本mysql->5.6.24 利用navicat建立了新表,并增加了对应内容,过程比较简答 好了,准备工作完毕,开始测试链接 方法和代码如下,大多数计算 ...

  4. python操作mysql数据库实现增删改查

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: ...

  5. Python——Python连接MySQL数据库

    基本概念 PyMySQL:PyMySQL是封装了MySQL驱动的Python驱动,一个能使Python连接到MySQL的库. mysql-connector-python(MySQL Connecto ...

  6. Mysql —— C语言链接mysql数据库,实现可以增删改查的角色权限登录系统

    /******************************************************************** * 标题:C语言链接mysql数据库,实现可以增删改查的角色 ...

  7. python编写一个接口,链接mysql数据库查询数据

    1.首先,使用python查询mysql数据库代码如下: import MySQLdbdef getcontent():db = MySQLdb.connect('localhost', 'root' ...

  8. Ubuntu系统下,使用python操作MySQL数据库

    文章目录 1. 安装 MySQL 2. MySQL 服务操作 3. MySQL 系统配置 3.1 MySQL配置文件的路径 3.2 配置文件内容 4. 安装 navicat 软件 5. 使用navic ...

  9. python链接mysql 判断是否成功_python连接mysql数据库并读取数据的实现

    1.安装pymysql包 pip install pymysql 注: MySQLdb只支持python2,pymysql支持python3 2.连接数据 import pymysql import ...

  10. python安装mysql数据库教程,Python配置mysql的教程(必看)

    下面小编就为大家带来一篇Python配置mysql的教程(推荐).小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 Linux系统自带Python,且根据系统自带资源来对p ...

最新文章

  1. BZOJ5212 ZJOI2018历史(LCT)
  2. try-except语句与else子句联合使用处理可能出现的程序异常
  3. 多线程编程(三)--创建线程之Thread VS Runnable
  4. System Verilog Assertion for debug
  5. 编写Python脚本来获取Google搜索结果的示例
  6. 阿里开发规范_字字珠玑,高级技术专家带你了解阿里的开发流程规范
  7. python requests post请求_Python“requests”模块中的POST请求无法正常工作
  8. 批处理只执行第一句,其他的不被执行,怎么办?
  9. 多模块顺序_广东省考行测时间如何分配?答题顺序的建议?
  10. gis数据与cad数据转换之间的关系
  11. 基于微信小程序的课堂考勤系统设计与实现
  12. VS2013+简单稀疏光束调整库SSBA配置(64位编译)
  13. 系列教程|Apache Doris ODBC 外表使用指南(一)
  14. 期权Greek之rho【python复现】
  15. ubuntu16.04+gtx1050驱动安装记录
  16. 查看知乎404问题解决办法
  17. Sliding Window Maximum
  18. Hadoop集群性能优化一
  19. 编程小白须知,阿里、百度、华为这些大厂都用什么编程语言?别说不知道!
  20. 访问学者办理签证的五点建议

热门文章

  1. PAT甲级1022 Digital Library (30分):[C++题解]结构体、排序、查询
  2. SpringBoot面向切面编程-用AOP方式管理日志
  3. IDEA报错Web server failed to start. Port 8080 was already in use的解决方法
  4. 台湾国立大学郭彦甫Matlab教程笔记(12) advanced 2D plot 下
  5. linux应用程序抢占键盘,linux 系统挂起
  6. c51单片机的语言,51单片机,stm32,arduino都是用什么语言进行编程的?
  7. android导航条高度修改,Android中修改TabLayout底部导航条Indicator长短的方法
  8. php 修改 wordpress,修改WordPress中文章编辑器的样式的方法详解
  9. adnroidstudio debug手机就自动退出程序_苹果官方表示 iPhone关闭后台程序或将缩短电池寿命...
  10. 怎样在计算机上插入机构图,Win7系统如何在excel中添加word文档结构图?