Python MySQLdb Linux下安装笔记

yipeiwu_com6年前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

完~

相关文章

python3+selenium实现126邮箱登陆并发送邮件功能

本文实例为大家分享了python3实现126邮箱登陆并发送邮件的具体代码,供大家参考,具体内容如下 基于selenium,使用chrome浏览器,完成126邮箱登陆并发送发邮件功能,暂时...

Python基于回溯法子集树模板解决0-1背包问题实例

Python基于回溯法子集树模板解决0-1背包问题实例

本文实例讲述了Python基于回溯法子集树模板解决0-1背包问题。分享给大家供大家参考,具体如下: 问题 给定N个物品和一个背包。物品i的重量是Wi,其价值位Vi ,背包的容量为C。问应...

介绍Python中的一些高级编程技巧

 正文: 本文展示一些高级的Python设计结构和它们的使用方法。在日常工作中,你可以根据需要选择合适的数据结构,例如对快速查找性的要求、对数据一致性的要求或是对索引的要求等,...

用uWSGI和Nginx部署Flask项目的方法示例

用uWSGI和Nginx部署Flask项目的方法示例

概况 在开发过程中,我们一般直接用Python命令直接运行Flask程序。这样的运行只适合我们开发,方便我们调试。一旦程序部署到线上,这样运行的Flask程序性能会比较低。可以采用uW...

在PyCharm中三步完成PyPy解释器的配置的方法

在PyCharm中三步完成PyPy解释器的配置的方法

介绍方法之前,我们先说说Python的解释器,由于Python是动态编译的语言,和C/C++、Java或者Kotlin等静态语言不同,它是在运行时一句一句代码地边编译边执行的,而Java...