您的位置:首页 > 运维架构 > Linux

Centos环境下MySQL-python安装过程

2012-06-21 10:17 816 查看
1. 下载 MySQL-python-1.2.3.tar.gz
    地址 https://sourceforge.net/projects/mysql-python/

2. 安装 MySQl-python
    tar xvf MySQL-python-1.2.3.tar.gz
    cd MySQL-python-1.2.3
    vi site.cfg
    把 mysql_config = /usr/local/mysql/bin/mysql_config 这一行前的#去掉,并且把mysql_config的路径设置正确。
    python setup.py build
    运行上面的命令报错如下:
 [root@localhost MySQL-python-1.2.3]# python setup.py  install

Traceback (most recent call last):

  File "setup.py", line 5, in ?

    from setuptools import setup, Extension

ImportError: No module named setuptools
解决方法:

wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz tar zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
python setup.py build
python setup.py install
出现错误

_mysql.c:36:23: 错误:my_config.h:没有那个文件或目录
_mysql.c:38:19: 错误:mysql.h:没有那个文件或目录
_mysql.c:39:26: 错误:mysqld_error.h:没有那个文件或目录
_mysql.c:40:20: 错误:errmsg.h:没有那个文件或目录

设置include 头文件路径

export C_INCLUDE_PATH=/usr/local/mysql/include/mysql

继续安装:
python
setup.py build
python setup.py install
运行测试:
 [root@localhost MySQL-python-1.2.3]# python

Python 2.4.3 (#1, Sep  3 2009, 15:37:37) 

[GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import MySQLdb

/usr/lib64/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-x86_64.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /usr/lib64/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-x86_64.egg/_mysql.pyc, but /opt/python/MySQL-python-1.2.3
is being added to sys.path

>>>
报出一大堆警告信息,解决办法:删除MySQL-python源目录,再测试一下:
 [root@localhost python]# python

Python 2.4.3 (#1, Sep  3 2009, 15:37:37) 

[GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import MySQLdb

>>>
Mysql模块终于正常了!

报错:

ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory

1.确定libmysqlclient_r.so.16的位置

/usr/local/mysql/lib/mysql/libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0

2.确定libmysqlclient_r.so.16使用的函数库及其位置

ldd  /usr/local/mysql/lib/mysql/libmysqlclient_r.so.16

/usr/local/mysql/lib/mysql/libmysqlclient_r.so.16.0.0

ldd -v   /usr/local/mysql/lib/mysql/libmysqlclient_r.so.16

/lib64

3.拷贝函数库到需要位置

cp -af  /usr/local/mysql/lib/mysql/libmysqlclient_r.so.16.0.0   /lib64
或者 vim /etc/ld.so.conf将/usr/local/mysql/lib/mysql该目录添加到第一行

4.ldconfig

5.ldconfig -v | grep  libmysqlclient_r.so.16

import MySQLdb sucess!!!!

本文出自 “运维笔记” 博客,请务必保留此出处http://lihuipeng.blog.51cto.com/3064864/887967
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息