MySQLdb安装|Centos 7 下关联 python 和 MariaDB or MySQL

原创 2015年07月09日 21:09:41
              **Edited by 蘑菇@HDUMaker**

Overview

系统配置:CentOS 7
python:Python 2.7.5
Mariadb:10.0.20-MariaDB MariaDB Server

进入python下输入 import MySQLdb

Python 2.7.5 (default, Jun 24 2015, 00:41:19)
[GCC 4.8.3 20140911 (Red Hat 4.8.3-9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb

回收到如下报错

ImportError: No module named MySQLdb

所以需要安装MySQLdb库,在此之前需要做如下配置

Dependencies

安装python-devel

ERROR: MySQLdb: Python.h: No such file or directory

由于MySQLdb是用c写的所以需要python-devel包

[root@iZ236xzsl93Z /]# yum -y install build-essential python-dev
Loaded plugins: langpacks
No package build-essential available.
No package python-dev available.
Error: Nothing to do

然而并不可以 ,因为在yum下dev并不叫这个名字╮(╯▽╰)╭
如下是身份证上的名字

For CentOS:

#> yum install mysql-devel

For openSUSE:


#> zypper install libmysqlclient-devel

For Debian-based systems/Ubuntu:


#> apt-get install libmysqlclient-dev

安装mysql-devel

即便是安装MySQL-python后我还是会遇到这个报错

mysql_config: command not found

#Error
sh: mysql_config: command not found
Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-bIrQHo/MySQL-python
Storing debug log for failure in /root/.pip/pip.log

解决方法:安装

[root@iZ236xzsl93Z ~]# yum install mysql-devel

最终显示:

Installed:
  MariaDB-devel.x86_64 0:10.0.20-1.el7.centos
Complete!

【注】因为我安装的是MariaDB所以这里是MariaDB-devel

放在后面解决>>>

ImportError: No module named mysql.*

... import mysql.connector as mariadb
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
ImportError: No module named mysql.connector

Installation

 #>yum install MySQL-python

安装了MySQL-python 跟MariaDB的shared文件

Install  1 Package (+1 Dependent package)
Total download size: 1.3 M
Installed size: 6.2 M
Is this ok [y/d/N]: y
Downloading packages:
(1/2): MySQL-python-1.2.3-11.el7.x86_64.rpm
(2/2): MariaDB-10.0.20-centos7-x86_64-shared.rpm

最后打开python测试下,能不能用

貌似还是不可以╮(╯▽╰)╭ 为啥呢 想不通@@@@@@@
接着试错…

下载MySQL-python-1.2.4b5.tar.gz

wget https://pypi.python.org/packages/source/M/MySQL-python/MySQL-python-1.2.4b5.tar.gz#md5=2d760ee948aff4f50d01afdf8afff48c

解压安装包 安装

[root@~]tar -zxvf MySQL-python-1.2.4b5 
[root@~]cd MySQL-python-1.2.4b5
[root@~ MySQL-python-1.2.4b5]# python setup.py build
[root@~MySQL-python-1.2.4b5]# python setup.py install

然而神奇的事情发生了 ,竟然能用了

>>> import MySQLdb
>>> db =  MySQLdb.connect("localhost","root","","test")
>>> cursor =  db.cursor()
>>> cursor.execute("SELECT VERSION()")

>>> data = cursor.fetchone()
>>> print "Database version : %s"%data
Database version : 10.0.20-MariaDB
>>> db.close()

成功了O(∩_∩)O哈!

References

How to connect Python programs to MariaDB
mysql-libmysqlclient
MySQLdb: Python.h: No such file or directory

Related Article

python操作mysql数据库@自强学堂

版权声明:本文为博主原创文章,未经博主允许不得转载。

python 操作Mariadb 数据库

首先我使用的是Pycharm,在操作数据库之前需要先导入相关的模块。 这个包叫做MySQLdb,按照网上的教程进行安装。...
  • Ghost_leader
  • Ghost_leader
  • 2017年05月30日 19:26
  • 768

Django_Python3添加MySQL/MariaDB支持

现状 首先,Django@Python2.x 中默认的引擎为 django.db.backends.mysql 。但是在Python3中如果这样写的话,会发现 django.db.backends....
  • wmj2004
  • wmj2004
  • 2016年11月18日 14:23
  • 1742

2_python连接MariaDB错误

环境 问题描述 报错信息 验证步骤 解决方法 环境 OS: Archlinux Python: python27, django 1.7.11 Mysql: Mariadb 问题描述在django中连...
  • longyinyushi
  • longyinyushi
  • 2017年06月20日 11:47
  • 223

Windows 下配置 Python 和 MariaDb

在 Windows 下,做程序开发的事情真可谓噩梦。下载安装完程序语言的编译器或解释器后大量的配置过程听起来就让人不寒而栗。这不,今天我就碰到了在 Windows 下如何使用 Python(Activ...
  • kingittiger
  • kingittiger
  • 2016年09月07日 10:39
  • 609

python简单连接mariadb数据库

下载python和maria数据库 pythonIDE,我用的是Canopy:https://www.enthought.com/canopy-subscriptions/ maria数据库:http...
  • guyang1995
  • guyang1995
  • 2017年01月04日 14:12
  • 403

pip安装mysql-python报致命错误:my_config.h:没有那个文件或目录

http://ju.outofmemory.cn/entry/95215 pip install mysql-python _mysql.c:44:23: 致命错误:my_conf...
  • zzh_my
  • zzh_my
  • 2015年11月14日 20:38
  • 2178

python脚本执行时报ImportError: No module named MySQLdb的处理

一.问题描述 执行py脚本时,提示ImportError: No module named MySQLdb错误,如下: [root@abc sh]# python 1.py Traceback ...
  • zengxuewen2045
  • zengxuewen2045
  • 2017年04月12日 21:49
  • 7386

ImportError: No module named MySQLdb 解决方案

在用PyCharm执行py脚本过程中出现ImportError: No module named MySQLdb 错误,经过查看发现是没有安装mysqldb。 环境:         操作系统:W...
  • dariazhang
  • dariazhang
  • 2015年12月24日 12:38
  • 3892

【MariaDB】安装MariaDB,与MySQL并存

原文链接:https://mariadb.com/kb/en/installing-mariadb-alongside-mysql/ xiaomo译------ MariaDB为可替代MySQ...
  • moxiaomomo
  • moxiaomomo
  • 2013年10月12日 00:14
  • 11249

python 操作Mariadb 数据库

首先我使用的是Pycharm,在操作数据库之前需要先导入相关的模块。 这个包叫做MySQLdb,按照网上的教程进行安装。...
  • Ghost_leader
  • Ghost_leader
  • 2017年05月30日 19:26
  • 768
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MySQLdb安装|Centos 7 下关联 python 和 MariaDB or MySQL
举报原因:
原因补充:

(最多只允许输入30个字)