MySQL-python 安装出现的问题

在linux下安装一个mysqldb,用来让python能读写mysql, 出现的问题

系统环境

1.Oracle Linux 6.5

2.mysql community 5.7.9

3.python default 2.6.6

4.MySQL_python-1.2.3

安装

1.安装MySQL-python大哭

解压tar zxvf MySQL-python-1.2.3.tar.gz

进入目录

2.python setup.py build 编译

这个时候,有可能需要装setuptool,gcc,如果提示找不到类似mysqlclient的提示

大家可以执行

ln -s /usr/lib64/mysql/libmysqlclient.a /usr/lib/libmysqlclient.a
ln -s /usr/lib64/mysql/libmysqlclient_r.a /usr/lib/libmysqlclient_r.a

具体原因我也不是很清楚,其实如果能把默认目录换到/usr/lib64下,最好了

至于threadsafe也不用改成False

# The path to mysql_config.# Only use this if mysql_config is not on your PATH, or you have some weird# setup that requires it.mysql_config = /usr/bin/mysql_config


把mysql_config这个目录换一下,可以用whereis mysq_config查找的大笑

python setup.py install(还是需要这一步的,大家不要忘记了)

3.如果提示

如果提示这个的话,大家不用怕,我也从这里跌倒的

经查得知是由于编译Python所用的编译器与编译MySQL-python所用编译器不同所致。
用g++重新编译_mysql.so即可

如果发现你的机器没有g++或者用yum install g++不行的情况下

你需要yum install gcc-c++ libstdc++-devel这个就可以了

首先要进入mysql-python的build目录里,我的是2.6,你要根据自己的改一下

 g++ -pthread -shared ./temp.linux-x86_64-2.6/_mysql.o -L/usr/lib64 -l mysqlclient_r -lpthread -lm -lrt -ldl -o ./lib.linux-x86_64-2.6/_mysql.so

然后重新编译就可以了

原文地址:https://www.cnblogs.com/andyjia/p/4999400.html