我在共享主机服务器上运行一个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