Python MySQLdb Linux下安装笔记

yipeiwu_com5年前Python基础

在家里windows环境下搞了一次
见   python MySQLdb在windows环境下的快速安装、问题解决方式
/post/65746.htm

在公司开发需要,再搞一次,linux下的。
发现用编译的方式安装真的很蛋疼,不过也算见见世面,各种问题......奋斗

这里也有两种方式:

A.快速安装
B.自己编译

1.最快速最简单方法(赶时间的话)

复制代码 代码如下:

sudo yum install MySQL-python

可能遇到问题:
复制代码 代码如下:

>>> import MySQLdb
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "MySQLdb/__init__.py", line 22, in ?
    raise ImportError("this is MySQLdb version %s, but _mysql is version %r" %
ImportError: this is MySQLdb version (1, 2, 3, 'final', 0), but _mysql is version (1, 2, 1, 'final', 1)

原因:之前使用编译的方法进行安装,下的是1.2.3,但是用yum目前最高1.2.1,冲突
解决方法:删除已经编译的文件
复制代码 代码如下:

                  rm -rf MySQL-python-1.2.3/

再进行
复制代码 代码如下:

>>> import MySQLdb

无错误,则表示成功了


2.自己编译安装(有时间的话。。。囧)

需要:
A.gcc
B.setuptools  

复制代码 代码如下:

解压执行 sudo easy_install.py [或者 python setup.py build   && sudo python setup.py install]
C.python-dev   在   sudo apt-get install python-dev
   否则会报异常:fatal error: Python.h: 没有那个文件或目录

步骤:
A.下载:wget http://sourceforge.net/projects/mysql-python/files/latest/download
B.

复制代码 代码如下:

$ tar xfz MySQL-python-1.2.3.tar.gz
$ cd MySQL-python-1.2.3
$whereis  mysql_config
mysql_config: /usr/bin/mysql_config
$ vim site.cfg

修改mysql_config为mysql配置文件的路径 /usr/bin/mysql_config
还要修改
复制代码 代码如下:

 threadsafe = False
$ python setup.py build
$ sudo python setup.py install

完~

相关文章

python笔记(2)

继续List: 删除元素: 复制代码 代码如下: a =[1, 2, 3, 4] a[2:3] = [] #[1, 2, 4] del a[2] #[1, 2] 清空list 复制代码...

通过Py2exe将自己的python程序打包成.exe/.app的方法

通过Py2exe将自己的python程序打包成.exe/.app的方法

Windows 10 x64 macOS Sierra 10.12.4 Python 2.7 准备好装哔~了么,来吧,做个真正意义上的绿色小软件 Win下发布应用 起因 今天实验室同学看...

Python数据分析matplotlib设置多个子图的间距方法

注意,要看懂这里,必须具备简单的Python数据分析知识,必须知道matplotlib的简单使用! 例1: plt.subplot(221) # 第一行的左图 plt.subplo...

python使用cPickle模块序列化实例

本文实例讲述了python使用cPickle模块序列化的方法,分享给大家供大家参考。 具体方法如下: import cPickle data1 = ['abc',12,23] #几...

python的set处理二维数组转一维数组的方法示例

for splitValue in set(dataset[:, featureIndex].tolist()): 首先set是一个无序,无重复的数据结构,所以很多时候使用它来进行去重;...