V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
roseth
V2EX  ›  Python

被 Mysql for Python 折腾坏了

  •  
  •   roseth · 2014-07-27 22:29:49 +08:00 · 9057 次点击
    这是一个创建于 3763 天前的主题,其中的信息可能已经有所发展或是发生改变。
    搞了2个小时的Mysql for Python还是木有成功。。

    啊喂~ 不是说MAC对开发者友好吗。。不是说Python很容易学习吗。。
    在MAC下弄个Mysql for Python都这么费劲
    MySQLdb 也安装了 distribute也安装了
    easy pip也安装了。网上搜到的步骤都走了一遍还是报错。。

    难道是因为我用的mysql是集成环境MAMP吗。。
    25 条回复    2014-07-28 17:37:35 +08:00
    skydiver
        1
    skydiver  
       2014-07-27 22:43:46 +08:00 via Android   ❤️ 1
    网上问问题的第一步是把详细错误日志贴出来

    而不是大叫我搞不定快来帮我……

    23333
    no13bus
        2
    no13bus  
       2014-07-27 22:46:01 +08:00
    哪里错了?可以到stackoverflow上面搜答案。基本可以找到
    Wuvist
        3
    Wuvist  
       2014-07-27 22:46:07 +08:00
    mac对开发者不友好,先在mac里面装个ubuntu虚拟机吧。
    yhf
        4
    yhf  
       2014-07-27 22:46:13 +08:00
    下载mysql-python,修改site.cfg:
    mysql_config = /usr/local/mysql/bin/mysql_config
    然后开始安装:
    sudo python setup.py clean
    sudo python setup.py build
    sudo python setup.py install
    sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
    cd /usr/lib
    ls -l libmysqlclient.18.dylib

    这我当初的记录,不知是否可行。
    roseth
        5
    roseth  
    OP
       2014-07-27 22:53:40 +08:00
    @skydiver

    抱歉哈,当初只是想抱怨一下 吐个槽的
    roseth
        6
    roseth  
    OP
       2014-07-27 22:55:18 +08:00
    @yhf 十分感谢你的回复。
    我之前也按这个流程试了一遍。但是在
    sudo python setup.py build 就报错了

    _mysql.c:44:10: fatal error: 'my_config.h' file not found
    #include "my_config.h"


    在github和stackoverflow搜索了一下,见到说是因为10.0.9版本的问题。。还没找到解决方法
    feijilei
        7
    feijilei  
       2014-07-27 22:59:05 +08:00   ❤️ 1
    建议直接用centos python 用2.6.6 或2.7的
    hahastudio
        8
    hahastudio  
       2014-07-27 23:33:48 +08:00 via Android
    所以说,还是 homebrew 好,我装的时候就没这么多事儿
    虽然 homebrew 里也有些比较坑的,比如 hive= =
    binux
        9
    binux  
       2014-07-27 23:58:44 +08:00   ❤️ 1
    用 mysql-connector-python 吧,存python免编译
    dingyaguang117
        10
    dingyaguang117  
       2014-07-28 00:02:48 +08:00
    @roseth 要设置C_INCLUDE_PATH
    reeco
        11
    reeco  
       2014-07-28 00:03:35 +08:00
    windows才是对程序员最友好的
    dingyaguang117
        12
    dingyaguang117  
       2014-07-28 00:03:40 +08:00   ❤️ 1
    LZ 是不是没装mysql-devel
    izoabr
        13
    izoabr  
       2014-07-28 05:02:04 +08:00
    顶@skydiver
    @dingyaguang117的思路是对的,他就是缺个头文件,这个头文件如果用brew的话,应该是mysql包里,没有单独的mysql-devel.
    所以直接用brew先装mysql,如果不用数据库,本地不要起服务就行了,只当客户端用.
    baocaixiong
        14
    baocaixiong  
       2014-07-28 07:49:01 +08:00 via iPhone
    把cellers里面MySQL 的头文件软链接到lib里面去
    nooper
        15
    nooper  
       2014-07-28 08:15:15 +08:00
    ...........,你对header不熟悉。
    p2p
        16
    p2p  
       2014-07-28 08:43:08 +08:00 via Android
    用 postgresql
    zhouzm
        17
    zhouzm  
       2014-07-28 09:17:49 +08:00
    建议装虚拟机 Parallels
    frankzeng
        18
    frankzeng  
       2014-07-28 10:07:09 +08:00
    mysql-devel没有装,找不到头文件吧
    p2p
        19
    p2p  
       2014-07-28 10:26:02 +08:00
    记得最新版osx 移除了一些头文件 需要自己加进去才可以

    索性转成 postgresql
    koy1619
        20
    koy1619  
       2014-07-28 11:02:57 +08:00
    和集成环境无关,easyinstall和pip都可以安装,实在不行就拿源码MySQL-python.tar.gz编译吧,记得先安装setuptools!最重要是看报错!参考 http://linux48.com/archives/60
    muzuiget
        21
    muzuiget  
       2014-07-28 11:04:23 +08:00
    Mac 是对熟悉 Linux 的开发者友好。
    good
        22
    good  
       2014-07-28 12:01:09 +08:00
    我也是用的MAMP 环境 不过用的是Python3 和PyMySql 这里有设置 http://www.shayiming.cn/05-12-382.html
    yakczh
        23
    yakczh  
       2014-07-28 12:31:17 +08:00
    archlinux 对开发者友好
    fghzpqm
        24
    fghzpqm  
       2014-07-28 16:38:15 +08:00   ❤️ 1
    两行命令搞定:

    brew install mysql-connector-c
    pip install MySQL-python
    julyclyde
        25
    julyclyde  
       2014-07-28 17:37:35 +08:00
    主要是MySQLdb的安装过程需要链接libmysqlclient

    可以试试用pymysql代替之
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1080 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 20:01 · PVG 04:01 · LAX 12:01 · JFK 15:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.