EC2 Ubuntu20.04下pip安装mysqlclient报mysql_config未找到的咨询
报错根因
mysqlclient是基于C扩展实现的Python MySQL连接驱动,源码编译阶段必须依赖系统提供的mysql_config/mariadb_config配置工具。AWS EC2上的Ubuntu 20.04实例若未预装对应数据库客户端的开发依赖,会直接在编译流程中断,抛出OSError: mysql_config not found异常。
解决步骤
- 更新apt源并安装系统编译依赖,其中
default-libmysqlclient-dev会直接提供编译所需的mysql_config工具,python3-dev提供Python版本对应的C头文件适配,build-essential提供基础GCC编译工具链:sudo apt update sudo apt install python3-dev default-libmysqlclient-dev build-essential - 验证依赖安装有效性,执行命令确认
mysql_config已被系统路径识别:
命令返回类似which mysql_config/usr/bin/mysql_config的文件路径,即代表系统依赖配置正常。 - 切换到日志中对应的目标Python虚拟环境
/home/websiteuser/newenv,重新执行mysqlclient安装。若本地缓存存在之前的失败安装记录,可加--no-cache-dir参数跳过缓存触发完整构建流程:pip install --no-cache-dir mysqlclient==2.0.3
特殊场景适配
- 若实例部署的是MariaDB而非默认MySQL,可将上述系统依赖包替换为
libmariadbclient-dev,该包会提供mariadb_config配置工具,后续安装逻辑完全一致。
内容的提问来源于stack exchange,提问作者Kolawole Ojo
相关产品推荐
相关产品推荐

