V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cbsheng
V2EX  ›  Django

mac 上安装 MySQL-python 不成功导致 python manager.py syncdb 运行失败。怎么破?

  •  
  •   cbsheng · 2014-05-02 14:46:30 +08:00 · 4163 次点击
    这是一个创建于 3857 天前的主题,其中的信息可能已经有所发展或是发生改变。
    版本:os x 10.9.2

    最开始用sudo pip install mysql-python安装的时候报错
    如下
    http://stackoverflow.com/questions/22392156/mysql-python-on-mac-os-10-9-1

    我按照上面所说执行了两条export之后还是报错

    接着又参考了这篇
    http://stardust1900.iteye.com/blog/2040818
    这时候用pip安装mysql-python成功了

    另外我也使用了
    sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
    所以在import MySQLdb也没有问题

    最后,我去执行python manager.py syncdb的时候,还是如下的报错说没有MySQLdb。。。
    django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

    大家有遇到过这样的问题吗?貌似是因为xcode的限制?
    另外我发觉os x下的环境变量有点蛋疼 - -
    6 条回复    2014-05-03 08:37:38 +08:00
    snail1988
        1
    snail1988  
       2014-05-02 17:26:52 +08:00
    mysql-python 这东西依赖mysql还不支持python3
    建议你用 pyMySQL
    niweyzhuce
        2
    niweyzhuce  
       2014-05-02 18:57:09 +08:00
    mysql 官方的Connector/Python 1.1.6 试过没? http://dev.mysql.com/downloads/connector/python/
    jprovim
        3
    jprovim  
       2014-05-02 23:49:00 +08:00
    mac下你用不用brew?如果用的話,可以試一試brew install mysql。 對我來說是可以用的。
    sfdye
        4
    sfdye  
       2014-05-03 03:02:46 +08:00
    command line tools装了吗
    cbsheng
        5
    cbsheng  
    OP
       2014-05-03 08:36:34 +08:00
    @snail1988 在django里pyMySQL可以代替mysql-python?
    cbsheng
        6
    cbsheng  
    OP
       2014-05-03 08:37:38 +08:00
    @jprovim 你的意思是用brew装的mysql解决了“django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb”这个报错?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2774 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:50 · PVG 21:50 · LAX 05:50 · JFK 08:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.