Python中使用MySQL的问题


第一步:安装MySQL-python-1.2.2.tar

python setup.py build
python setup.py intstall

第二步:可能遇到的错误

1、libmysqlclient.so.16: cannot open shared object file: No such file or directory

需要安装新的包mysqlclient16-5.1.30-1.el5.remi.i386

或者通过ln -s设置链接

2、 在build的时候需要按照setuptools-0.6b1-py2.4.egg包

% wget -q http://peak.telecommunity.com/dist/ez_setup.py

% python ez_setup.py
  Downloading http://cheeseshop.python.org/packages/2.4/s/
  setuptools/setuptools-0.6b1-py2.4.egg#md5=b79a8a403e4502fbb85ee3f1941735cb
  Processing setuptools-0.6b1-py2.4.egg
  creating /sw/lib/python2.4/site-packages/setuptools-0.6b1-py2.4.egg
  Extracting setuptools-0.6b1-py2.4.egg to /sw/lib/python2.4/site-packages
  Removing setuptools 0.6a11 from easy-install.pth file
  Adding setuptools 0.6b1 to easy-install.pth file
  Installing easy_install script to /sw/bin
  Installing easy_install-2.4 script to /sw/bin

  Installed /sw/lib/python2.4/site-packages/setuptools-0.6b1-py2.4.egg
  Processing dependencies for setuptools

这个按照需要上网,需要设置网络环境ip地址+DNS。

3  EnvironmentError: mysql_config not found

MySQL-python-1.2.2]# vi setup_posix.py
26 mysql_config.path = "/usr/local/mysql/bin/mysql_config"
将26行改为mysql_config的真是路径
再次执行python setup.py build;python setup.py install
就OK了

4 /usr/bin/ld: cannot find -lmysqlclient_r
 解决方法一(已经测试通过)

执行以下命令:

echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf(我的环境是CentOS 5)

ldconfig,执行以后还是提示以上错误。

———————–

后来看来一下README,原文在下面

——————-

threadsafe
        thread-safe client library (libmysqlclient_r) if True (default);
        otherwise use non-thread-safe (libmysqlclient). You should
        always use the thread-safe library if you have the option;
        otherwise you *may* have problems.

———————————

得知得修改site.cfg,将thread-safe设为false,一切OK!

python setup.py install

解决方法二(没有测试)A thread-safe client library (libmysqlclient_r) will be created automatically during the compilation of MySQL  if the configure command contains the option "--enable-thread-safe-client".

相关内容