Python下的Mysql模块MySQL-python安装和问题详解

始初我是想安装国产云存储seafile-server的。公司要做自己的私云存储,方便各个部门的资料存储,已经移动办公。我在服务器上架设的是的owncloud+mysql,一个国外的云存储,性能还算是可以,我在oschina.net上面看到了国内的一个软件seafile-server,据说效果不错,已经上架好长时间了,想上手试试效果。下载安装…………

根据官方提供的详细安装步骤安装。第一步就出错。

ImportError: No module named MySQLdb

提示没有安装MySQL-python。

那就安装呗。首先想到yum安装省时省力。

# yum install MySQL-python

提示没有这个安装包。

手动下载安装。。。

#wget  http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz

下载完成解压安装。。

进入目录安装。

# cd MySQL-python-1.2.3
# python setup.py build
# python setup.py install

顺利的话就安装完成咯。。

可是鄙人的命运不是这样的。。

接着报错。。

EnvironmentError: mysql_config not found

麻蛋。。我的服务器上安装这mysql这东西。提示没有配置文件。。扯淡。。老子给你指定一个。。

首先查找mysql_config的位置,使用
#find / -name mysql_config

找到的话用下面的方法指定。。

比如在/usr/local/mysql/bin/mysql_config
修改setup_posix.py文件,

在26行:
mysql_config.path = “mysql_config”

修改为:

mysql_config.path = “/usr/local/mysql/bin/mysql_config”

一查才知道真的没有。什么原因呢。是我没有安装MySQL-devel(我的mysql是rpm安装的,不是yum)

顺手安装了 mysql-client、mysql-shared,,面的在报错。(应该安装的是。 MySQL-devel MySQL-client MySQL-shared-compat MySQL-shared  。都安装上吧,反正不占啥空间,不用就闲着,呵呵。。

安装完成。。继续。不用指定配置文件路径。。

继续报错。。

building '_mysql' extension  
gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/include/mysql -I/usr/local/include/python2.7 -c _mysql.c -o build/temp.linux-x86_64-2.7/_mysql.o -g -pipe -m64 -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1  
在包含自 _mysql.c:36 的文件中:  
/usr/include/mysql/my_config.h:422:1: 警告:“HAVE_WCSCOLL”重定义  
在包含自 /usr/local/include/python2.7/Python.h:8 的文件中,  
                 从 pymemcompat.h:10,  
                 从 _mysql.c:29:  
/usr/local/include/python2.7/pyconfig.h:890:1: 警告:这是先前定义的位置  
gcc -pthread -shared build/temp.linux-x86_64-2.7/_mysql.o -L/usr/lib64 -lmysqlclient -lpthread -lm -lrt -ldl -o build/lib.linux-x86_64-2.7/_mysql.so  
/usr/bin/ld: cannot find -lmysqlclient  

collect2: ld 返回 1 

 

真心的这时候我的一个心塞啊。。这么难么。自信看哪里错的错。。

说找不到 mysqlclient ,真心不可能,我把mysql-devel 、 mysql-client、mysql-shared都装上了。

只好从系统查找该文件,再建立软连接

#find / -name 'libmysqlclient.so.*' 

/usr/lib64/libmysqlclient.so.18.1.0
/usr/lib64/libmysqlclient.so.18

建立软连接

ln -s /usr/lib64/libmysqlclient.so.18 /usr/lib/libmysqlclient.so


再次install

# python setup.py build
# python setup.py install

顺利完成。。嘎嘎。。

版权所有:《太阳花工作室》 => 《Python下的Mysql模块MySQL-python安装和问题详解
本文地址:http://bg.artuion.com/linux/324.html
除非注明,文章均为 《太阳花工作室》 原创,欢迎转载!转载请注明本文地址,谢谢。