开发者社区> eddie小英俊> 正文

pydev-python 链接mysql数据库(mac系统)

简介:
+关注继续查看

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/你的username/ 文件夹下编辑或加入隐藏文件.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 MySQLdb

try:
    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 r
    cur.close()
    conn.close()
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])
   

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


版权声明:本文博客原创文章。博客,未经同意,不得转载。





本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/4666906.html,如需转载请自行联系原作者


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MySQL数据库系统中的核心组件一共有哪些?底层原理是什么?
MySQL数据库系统中的核心组件一共有哪些?底层原理是什么?
13 0
Windows系统、下的MySQL、版本升级、实操
Windows系统、下的MySQL、版本升级、实操
31 0
当你在Linux系统中编译安装MySQL数据库卡住了怎么办?
当你在Linux系统中编译安装MySQL数据库卡住了怎么办?
29 0
怎么在 window 系统里本地安装 mysql
怎么在 window 系统里本地安装 mysql
14 0
重装Ubuntu系统后Mysql 数据恢复历程
重装Ubuntu系统后Mysql 数据恢复历程
65 0
java Swing+mysql+JDBC实现教务系统(源码+数据库+UML图+数据库分析)
🍅程序员小王的博客:程序员小王的博客 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习路线:java自学的学习路线
37 0
【MySQL从入门到精通】【高级篇】(二十一)数据库优化步骤_查看系统性能参数
上一篇文章我们介绍了哪些情况下适合创建索引,哪些情况下不适合创建索引,下面就介绍一下数据库优化步骤 【MySQL从入门到精通】【高级篇】(二十)适合创建索引的11种情况&不适合创建索引的7种情况,万字长文
27 0
Linux系统:第十二章:AWS服务器X86架构安装配置Mysql与MongoDB
Linux系统:第十二章:AWS服务器X86架构安装配置Mysql与MongoDB
48 0
linux系统mysql服务启动失败
linux系统mysql服务启动失败
57 0
本周推荐 | mysql中业务系统可借鉴的设计
推荐语:学习优秀的开源系统来优化我们业务的架构设计,这是我们作为业务开发的必修课,这篇文章从经典的mysql系统原理引申到业务系统设计思考,让人耳目一新,值得我们学习。 ——大淘宝技术工程师 默达
79 0
+关注
eddie小英俊
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载