0X01 问题

MySQL-python是python调用MySQL的常用库

通常安装时会遇到某些坑。

EnvironmentError: mysql_config not found

yum -y install mysql-devel

gcc报错

yum install gcc libffi-devel python-devel openssl-devel

一般这样就OK了(装了六七个机器,这样就行了)

但是,在用公司的机器装的时候,装完mysql-devel与gcc系列之后,报错

my_config.h: No such file or directory

这真是奇怪的问题,找了许久百度谷歌没有找到答案。

0X02 其他安装方式

yum安装

yum install MySQL-python

easy_install MySQL-python

对比起pip安装,yum 和 easy_install 可能会链接到原本的Python版本。

比如我的机器是centos6.6,原装版本是python2.6.6(自己后面装的python2.7),yum调用的python版本也是python2.6.6

所以用yum安装时,MySQL-python直接给装到Python2.6.6里了。

虽然python -> python2.7这类软链接都已经做了,但是安装好还是链接向python2.6.6

如果对Python版本没有2.7的要求,或者centos机器本身的python版本比较高,可以试一下。

期间装了另外的东西

官方mysql-libs

官方MySQL-python

下载到本机后

rz 命令上传到机器

rpm -ivh 安装

0X03 找到原因

遍地找不到原因

坐下来冷静思考

我已经装了mysql的依赖——mysql-devel了

这时候报错确实my_config.h

(百度搜索缺失了怎么办,答:装mysql-devel。我已经装了还缺失呢?答:没有这种情况)

而在折腾的过程中,查看了官方mysql-devel,里面是有my_config.h的文件的。

所以想了想,可能是公司的“陈年老源”里蕴含着宝贝的秘密。

重新在官网下载mysql-devel的rpm包

yum 卸载掉公司源安装的mysql-devel

再rpm安装正版的mysql-devel。

pip install mysql-python==1.2.5

OK成功了

吐槽:垃圾公司源,安装完东西里面还缺了个文件,太缺德了,找了一整天的原因,还没有怀疑过公司的源下载的东西不完整。

关键链接资源

python MySQL安装依赖报错的坑的更多相关文章

  1. Python virtualenv安装库报错SSL: CERTIFICATE_VERIFY_FAILED

    Python virtualenv安装库报错SSL: CERTIFICATE_VERIFY_FAILED 问题描述 使用pip按照virtualenv报错,如下: pip install virtua ...

  2. Python djangorestframework安装库报错SSL: CERTIFICATE_VERIFY_FAILED

    Python djangorestframework 安装库报错SSL: CERTIFICATE_VERIFY_FAILED 问题描述 使用pip按照virtualenv报错,如下: pip inst ...

  3. yum 安装 依赖报错

    今天使用yum安装的时候 报错: Error: Multilib version problems found. This often means that the root cause 应该是yum ...

  4. python pip安装模块报错 "Can't connect to HTTPS URL because the SSL module is not available."

    在升级python版本为3.6之后,pip安装模块报错. 报错信息如图: 原因是系统自带的openssl版本与python3的版本不匹配,所以这里只要升级openssl版本就可以解决问题. yum - ...

  5. python pip安装扩展报错

    1.安装tldr报错 (1)报错详情: [root@linuxnode1 ~]# pip install tldrCollecting tldr Downloading https://files.p ...

  6. mysql安装/启动报错汇总

    2016/9/6补充 初始化报错: # /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysq ...

  7. npm install 安装依赖报错

    npm ERR! Unexpected end of JSON input while parsing near '...2.4.8","karma":"~0. ...

  8. react项目运行安装依赖报错:Error: pngquant failed to build, make sure that libpng-dev is installed

    安装报错之后.但是安装libpng-dev.发现找不到.通过多方查找.准备重新安装pngquant.命令如下: npm install --save-dev pngquant安装成功并运行成功

  9. centos 升级 python后 python-setuptools pip 安装依赖报错

    解决办法: $ wget https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.p ...

随机推荐

  1. “无法改变的设计”——浅谈Java中的final关键字

    在Java中,final关键字可以用来修饰类.变量(包括成员变量和局部变量).方法,下面从这三个方面分别说明. final方法 当一个方法被final修饰时,表明这个方法不能被子类重写. 下面程序试图 ...

  2. 多线程(5) — JDK的并发容器

    JDK提供了一些高效的并发容器,下面介绍几个 ConcurrentHashMap:这是个高效的并发HashMap,可以理解为一个线程安全的HashMap. CopyOnWriteArrayList:这 ...

  3. GCC 高版本7.4 编译链接 boost 报错 boost::thread::XXX’未定义的引用 解决方法

    背景:开发中的项目之前一直用GCC4.8,boost库1.48版本的开发环境.现在因业务需求,需要更换GCC7.4,boost库1.70. 问题:可以正常编译BOOST的链接库文件,但是链接时候报错. ...

  4. 小程序文案过长,‘收起/展开’文字,createSelectorQuery 获取节点成功,boundingClientRect 返回信息null

    问题描述: wxml中id是动态生成的. 获取节点信息是在onReady生命周期函数内延时500ms执行的,select(id)可以获取全部节点信息,boundingClientRect (rect) ...

  5. SpringCloud Hystrix 参数

    hystrix.command.default和hystrix.threadpool.default中的default为默认CommandKey Command PropertiesExecution ...

  6. HTML中关于动态创建的标签无法绑定js事件的解决方法:.on()方法的 [.selector]

    在前端页面的时候,会经常遇到用JavaScript动态创建出来的Button按钮或其他标签无法使用点击事件的问题.如下代码,使用jquery在body中动态创建一个class为demo的Button按 ...

  7. Java Web-JSTL

    Java Web-JSTL 概念 Java Server Pages Tag Library:JSP标准标签库 是由Apache组织提供的开源.免费JSP标签 用于简化和替换JSP页面上的Java代码 ...

  8. Python练习_高阶函数_day11

    1,写函数,传入n个数,返回字典{‘max’:最大值,’min’:最小值} 例如:min_max(2,5,7,8,4) 返回:{‘max’:8,’min’:2}(此题用到max(),min()内置函数 ...

  9. Go微服务 grpc的简单使用

    作者:薇文文链接:https://www.jianshu.com/p/20ed82218163来源:简书 准备工作 先安装Protobuf 编译器 protoc,下载地址:https://github ...

  10. 6.显示锁Lock 和 线程通信Condition

    显示锁 Lock 一.用于解决多线程 安全问题的方式: synchronized:   1.同步代码块      2.同步方法 jdk1.5 后:第三种:同步锁Lock  (注意:同步(synchro ...