我在共享主機服務器上運行一個python腳本,直到今天早上有MySQL版本4.現在它有版本5.我的python腳本不能再連接到MySQL,因爲它找不到libmysqlclient_r.so.14 :如何告訴python要使用哪個版本的libmysqlclient.so?
$ python my_script.py
Traceback (most recent call last):
File "my_script.py", line 6, in ?
import MySQLdb
File "/home/lib/python2.4/site-packages/PIL-1.1.6-py2.4-linux-i686.egg/__init__.py", line 19, in ?
File "build/bdist.linux-i686/egg/_mysql.py", line 7, in ?
File "build/bdist.linux-i686/egg/_mysql.py", line 6, in __bootstrap__
ImportError: libmysqlclient_r.so.14: cannot open shared object file: No such file or directory
有在/ usr/lib中的libmysqlclient的其他各種版本:
/usr/lib/libmysqlclient.so.15
/usr/lib/libmysqlclient.so.14
/usr/lib/mysql/libmysqlclient.la
/usr/lib/mysql/libmysqlclient.so
/usr/lib/mysql/libmysqlclient_r.so
/usr/lib/mysql/libmysqlclient_r.a
/usr/lib/mysql/libmysqlclient_r.la
/usr/lib/mysql/libmysqlclient.a
/usr/lib/libmysqlclient.so
/usr/lib/libmysqlclient_r.so
/usr/lib/libmysqlclient_r.so.15
/usr/lib/libmysqlclient_r.so.15.0.0
/usr/lib/libmysqlclient.so.15.0.0
所以我的問題是:我怎麼能告訴巨蟒(2.4.3版本),它的libmysqlclient的版本使用?
嗨Sykora,謝謝 - 我試過了,但它似乎並沒有奏效。 python肯定會在PYTHONPATH中尋找共享對象嗎?我想知道是否還有另外一個env變量,我錯過了...... – Ben 2009-02-04 12:08:10
根據文檔,它會在標準dirs _after_中搜索PYTHONPATH中的所有標準dirs,因此如果這不適用於您,它肯定是別的。 – sykora 2009-02-04 12:43:15