V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
cbsheng
V2EX  ›  Django

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

  •  
  •   cbsheng · May 2, 2014 · 4609 views
    This topic created in 4377 days ago, the information mentioned may be changed or developed.
    版本: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 replies    2014-05-03 08:37:38 +08:00
    snail1988
        1
    snail1988  
       May 2, 2014
    mysql-python 这东西依赖mysql还不支持python3
    建议你用 pyMySQL
    niweyzhuce
        2
    niweyzhuce  
       May 2, 2014
    mysql 官方的Connector/Python 1.1.6 试过没? http://dev.mysql.com/downloads/connector/python/
    jprovim
        3
    jprovim  
       May 2, 2014
    mac下你用不用brew?如果用的話,可以試一試brew install mysql。 對我來說是可以用的。
    sfdye
        4
    sfdye  
       May 3, 2014
    command line tools装了吗
    cbsheng
        5
    cbsheng  
    OP
       May 3, 2014
    @snail1988 在django里pyMySQL可以代替mysql-python?
    cbsheng
        6
    cbsheng  
    OP
       May 3, 2014
    @jprovim 你的意思是用brew装的mysql解决了“django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb”这个报错?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2750 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 00:03 · PVG 08:03 · LAX 17:03 · JFK 20:03
    ♥ Do have faith in what you're doing.