多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 导语 > 在Centos7下,当前python版本是2.7.5,测试实时获取日志然后解析入库中,安装`MySQL-python`模块报错如 `EnvironmentError: mysql_config not found`,原因是缺少了 mysql 相关支持。 > 这里把解决过程记录一下 --- 环境信息 系统: Centos7.2 Python 版本: 2.7.5 --- 具体报错信息: ``` root@pts/4 $ pip install MySQL-python Collecting MySQL-python Using cached MySQL-python-1.2.5.zip Complete output from command python setup.py egg_info: sh: mysql_config: command not found Traceback (most recent call last): File "<string>", line 1, in <module> File "/tmp/pip-build-kWowP9/MySQL-python/setup.py", line 17, in <module> metadata, options = get_config() File "setup_posix.py", line 43, in get_config libs = mysql_config("libs_r") File "setup_posix.py", line 25, in mysql_config raise EnvironmentError("%s not found" % (mysql_config.path,)) EnvironmentError: mysql_config not found ---------------------------------------- Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-kWowP9/MySQL-python/ ``` --- mysql_config是来自于 `mysql-devel` ,我用的是MySQL社区版,所以实际安装的是`mysql-community-devel`,网上的说法是同时安装`python-devel`,如果你没有安装的话一起安装 yum install python-devel mysql-community-devel -y 安装完成之后尝试再次 pip 安装 MySQL-python --- ## 再次安装 ``` root@pts/4 $ pip install MySQL-python Collecting MySQL-python Using cached MySQL-python-1.2.5.zip Installing collected packages: MySQL-python Running setup.py install for MySQL-python ... done Successfully installed MySQL-python-1.2.5 ``` --- ## 验证 ``` root@pts/1 $ python Python 2.7.5 (default, Sep 15 2016, 22:37:39) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import MySQLdb >>> MySQLdb. MySQLdb.BINARY MySQLdb.OperationalError( MySQLdb.__hash__( MySQLdb.debug( MySQLdb.Binary( MySQLdb.ProgrammingError( MySQLdb.__init__( MySQLdb.escape( MySQLdb.Connect( MySQLdb.ROWID MySQLdb.__name__ MySQLdb.escape_dict( MySQLdb.Connection( MySQLdb.STRING MySQLdb.__new__( MySQLdb.escape_sequence( MySQLdb.DATE MySQLdb.TIME MySQLdb.__package__ MySQLdb.escape_string( MySQLdb.DATETIME MySQLdb.TIMESTAMP MySQLdb.__path__ MySQLdb.get_client_info( MySQLdb.DBAPISet( MySQLdb.Time( MySQLdb.__reduce__( MySQLdb.paramstyle MySQLdb.DataError( MySQLdb.TimeFromTicks( MySQLdb.__reduce_ex__( MySQLdb.release MySQLdb.DatabaseError( MySQLdb.Timestamp( MySQLdb.__repr__( MySQLdb.result( MySQLdb.Date( MySQLdb.TimestampFromTicks( MySQLdb.__revision__ MySQLdb.server_end( MySQLdb.DateFromTicks( MySQLdb.Warning( MySQLdb.__setattr__( MySQLdb.server_init( MySQLdb.Error( MySQLdb.__all__ MySQLdb.__sizeof__( MySQLdb.string_literal( MySQLdb.FIELD_TYPE MySQLdb.__author__ MySQLdb.__str__( MySQLdb.test_DBAPISet_set_equality( MySQLdb.IntegrityError( MySQLdb.__class__( MySQLdb.__subclasshook__( MySQLdb.test_DBAPISet_set_equality_membership( MySQLdb.InterfaceError( MySQLdb.__delattr__( MySQLdb.__version__ MySQLdb.test_DBAPISet_set_inequality( MySQLdb.InternalError( MySQLdb.__dict__ MySQLdb._mysql MySQLdb.test_DBAPISet_set_inequality_membership( MySQLdb.MySQLError( MySQLdb.__doc__ MySQLdb.apilevel MySQLdb.thread_safe( MySQLdb.NULL MySQLdb.__file__ MySQLdb.connect( MySQLdb.threadsafety MySQLdb.NUMBER MySQLdb.__format__( MySQLdb.connection( MySQLdb.times MySQLdb.NotSupportedError( MySQLdb.__getattribute__( MySQLdb.constants MySQLdb.version_info >>> >>> MySQLdb.version_info (1, 2, 5, 'final', 1) >>> ```