django中的MySQLdb问题

时间:2011-08-18 15:10:12

标签: django osx-snow-leopard mysql-python

我在64bit雪豹上安装了mysql-python,在python IDE下很好,但在django中输入失败了。 有人遇到过类似的问题吗?

  

File "/Library/Python/2.6/site-packages/django/db/backends/mysql/base.py", line 14, in <module>
raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured: 
Error loading MySQLdb module: dlopen(/Users/szanlin/.python-eggs/MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so, 
2): Library not loaded: libmysqlclient.18.dylib
Referenced from: /Users/szanlin/.python-eggs/MySQL_python-1.2.3-py2.6-macosx-10.6-universal.egg-tmp/_mysql.so
Reason: image not found

2 个答案:

答案 0 :(得分:9)

我有同样的问题,我能在这里找到答案:

http://www.curlybrace.com/words/2011/01/25/mac-os-mysql-python-1-2-3-importerror-library-not-loaded-libmysqlclient-16-dylib/

基本上你需要添加这一行:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/

到你的/ etc / bashrc文件。

另一个有用的页面可以在这里找到:

http://programmingzen.com/2007/12/22/how-to-install-django-with-mysql-on-mac-os-x/

答案 1 :(得分:0)

只是澄清上面的答案。很好的答案和PowerAnimal是正确的。如果我可以投票给他,我会的。

请添加以下行:

export DYLD_LIBRARY_PATH = / usr / local / mysql / lib /

为:

用户/ .bash_profile中

这是一个隐藏文件。您可以在终端中使用以下命令查看此文件。

  
    
      

默认写com.apple.Finder AppleShowAllFiles是

    
  

然后:

  
    
      

killall Finder

    
  

完成后:

  
    
      

默认写com.apple.Finder AppleShowAllFiles NO

    
  

然后:

  
    
      

killall Finder

    
  

检查Python是否正在与MySQL通信:

  
    
      

导入MySQLdb

             

MySQLdb.apilevel

    
  

检查Django是否正常工作:

  
    
      

导入django

             

print django.VERSION

    
  

如果没有错误,您应该可以继续使用Django设置。