Miałem podobny problem, spójrz na mój traceback:
>>> import MySQLdb
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.6/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/Library/Python/2.6/site-packages/_mysql.so, 2): Library not loaded: libmysqlclient.16.dylib
Referenced from: /Library/Python/2.6/site-packages/_mysql.so
Reason: image not found
To, co zrobiłem, to umieszczenie tych zmiennych w moim .bash_profile
:
export DYLD_LIBRARY_PATH="/usr/local/mysql/lib/:$DYLD_LIBRARY_PATH"
A kiedy uruchomiłem aplikację Python CGI z Apache, ustawiłem tę samą zmienną za pomocą dyrektywy SetEnv:
<Directory "/path/to/app">
SetEnv DYLD_LIBRARY_PATH /usr/local/mysql/lib/:$DYLD_LIBRARY_PATH
...
</Directory>
I wszystko działa teraz.