linux环境下python中MySQLdb模块的安装方法


Posted in Python onJune 16, 2017

前言

最近开始学习python数据库编程后,在了解了基本概念,打算上手试验一下时,卡在了MYSQLdb包的安装上,折腾了半天才解决。记录一下我在linux中安装此包遇到的问题。

系统是ubuntn15.04。

1.下载

第一个问题是pycharm软件的模块安装功能Project Interpreter无法自动下载安装MYSQLdb包,显示

Error occurred when installling package

那没办法了,只好手动下载了。MYSQLdb包linux系统的下载的地址是:http://sourceforge.net/projects/mysql-python/file/mysql-python/

在页面内选择你想要安装的版本下载即可,我下载的版本是1.2.4b4

2.安装

一:下载之后,打开终端,切换到自己的下载文件目录,在我的电脑上是目录/home/hai/download,之后解压下载的文件,即在终端输入:

tar xfz MySQL-python-1.2.4b4.tar.gz

二:使用命令

cd MySQL-python-1.2.4b4

切换到解压后的目录。

三:编译MYSQLdb包

输入命令

python setup.py build

此时遇到问题,报错信息是

mysql_config not found

google之后发现要修改MYSQLdb解压之后目录中的setup_posix.py第26行,此行的内容是

mysql_config.path = "mysql_config"

mysql_config是mysql安装目录中的一个文件的名称,需要将26行变量的值改为此文件的绝对路径。

于是使用

whereis mysql

查看数据库安装目录,进入安装目录。但是发现安装目录中并没有mysql_config文件,啊,好气啊。

再继续google,发现是没有安装libmysqlclient-dev,那就安装!使用命令:

sudo apt-get install libmysqlclient-dev

安装这个东西,之后使用命令:

file -name mysql_config

查看这个文件的路径,ok,有了。

将setup_posix.py文件修改后,再使用python setup-python-1.2.4b4安装,又遇到问题了,错误信息:

error: command 'i686-linux-gnu-gcc' failed with exit status 1

啊啊啊。

继续google,原来是没有安装python-dev,好的,那就安装.使用命令:

sudo apt-get install python-dev

安装完成后,再使用输入了N次的命令python setup.py build,好,终于没有报错了,现在就差一步就安装成功了。

四:输入命令sudo python setup.py install

好,终于安装上了,在python中实验一下,导入一下MYSQLdb模块,import MYSQLdb,没有消息,恩,没有消息就是最好的消息,安装成功!

P.S

另外在google过程中,还看到了好几个错误报警,虽然我没有遇到,还是在这里提一下。

  • 第一个是如果没有安装steuptools,在第三步编译时会报错ImportError: No module named setuptools,那就去安装setuptools,至于setuptools的安装,那就是另外的问题了,就不多说了。
  • 第二个是关于python.h文件报错,这是python版本的问题,需要处理一下python版本,也不再多说。
  • 第三个是/usr/bin/ld:cannot find -lmysqlclient_r报错,这是由于配置文件没有生效。找到mysql的配置文件,使用使用:ldconfig命令刷新使其生效即可。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python使用win32com在百度空间插入html元素示例
Feb 20 Python
Python错误: SyntaxError: Non-ASCII character解决办法
Jun 08 Python
python多线程之事件Event的使用详解
Apr 27 Python
pandas 空的dataframe 插入列名的示例
Oct 30 Python
学生信息管理系统Python面向对象版
Jan 30 Python
python开头的coding设置方法
Aug 08 Python
python并发编程多进程 模拟抢票实现过程
Aug 20 Python
使用Django和Postgres进行全文搜索的实例代码
Feb 13 Python
python实现信号时域统计特征提取代码
Feb 26 Python
基于python的opencv图像处理实现对斑马线的检测示例
Nov 29 Python
Python 绘制多因子柱状图
May 11 Python
 python中的元类metaclass详情
May 30 Python
Django中利用filter与simple_tag为前端自定义函数的实现方法
Jun 15 #Python
Python中关于Sequence切片的下标问题详解
Jun 15 #Python
解决python3在anaconda下安装caffe失败的问题
Jun 15 #Python
带你了解python装饰器
Jun 15 #Python
解决Linux系统中python matplotlib画图的中文显示问题
Jun 15 #Python
Python之os操作方法(详解)
Jun 15 #Python
基于Linux系统中python matplotlib画图的中文显示问题的解决方法
Jun 15 #Python
You might like
图解上海144收音机
2021/03/02 无线电
PHP中去掉字符串首尾空格的方法
2012/05/19 PHP
PHP获取当前文件的父目录方法汇总
2016/07/21 PHP
PHP利用百度ai实现文本和图片审核
2019/05/08 PHP
限制复选框的最大可选数
2006/07/01 Javascript
ASP.NET中AJAX 调用实例代码
2012/05/03 Javascript
jQuery实现Tab选项卡切换效果简单演示
2015/11/23 Javascript
WEB前端开发框架Bootstrap3 VS Foundation5
2016/05/16 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
2017/03/02 Javascript
Angular4表单验证代码详解
2017/09/03 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
js实现单张图片平移切换效果
2017/10/11 Javascript
从零开始搭建一个react项目开发
2018/02/09 Javascript
Js面试算法详解
2018/04/08 Javascript
AngularJS自定义表单验证功能实例详解
2018/08/24 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
2018/09/16 Javascript
在vue里使用codemirror遇到的问题
2018/11/01 Javascript
解决Antd Table组件表头不对齐的问题
2020/10/27 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
python对数组进行反转的方法
2015/05/20 Python
python字典操作实例详解
2017/11/16 Python
python中使用zip函数出现错误的原因
2018/09/28 Python
python切片(获取一个子列表(数组))详解
2019/08/09 Python
详解python路径拼接os.path.join()函数的用法
2019/10/09 Python
把vgg-face.mat权重迁移到pytorch模型示例
2019/12/27 Python
PyCharm上安装Package的实现(以pandas为例)
2020/09/18 Python
Python爬取某平台短视频的方法
2021/02/08 Python
为什么要有struct关键字
2012/05/08 面试题
开办饭店创业计划书
2013/12/28 职场文书
寄语是什么意思
2014/04/10 职场文书
擅自离岗检讨书
2014/09/12 职场文书
高中生学习计划书
2014/09/15 职场文书
2014年后勤工作总结
2014/11/18 职场文书
六年级语文教学反思
2016/03/03 职场文书
导游词之四川武侯祠
2019/10/21 职场文书