Python3安装MySQL-python踩坑实录:从报错到完美解决的实战指南

本文来自「大千AI助手」技术实战系列,专注用真话讲技术,拒绝过度包装。

问题描述

主要问题

Python3.8.2环境中安装 MySQL-python 时报错, 报错没有模块ConfigParser

往期文章推荐:

详细报错信息如下

复制代码
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-5ieh7yrp/mysql-python_f8bd8f4e7c264169b4ee0cdece103cac/setup.py", line 13, in <module>
          from setup_posix import get_config
        File "/tmp/pip-install-5ieh7yrp/mysql-python_f8bd8f4e7c264169b4ee0cdece103cac/setup_posix.py", line 2, in <module>
          from ConfigParser import SafeConfigParser
      ModuleNotFoundError: No module named 'ConfigParser'
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

通过 pip list | grep -i configparser 发现已经安装有configparser模块

原因分析

  • • 查找搜索ConfigParser发现Python3中将ConfigParser重命名为configparser (PEP 8 compliance)
  • • 而MySQL-python现在还不支持Python3, 仅支持 python2.4 ~ python2.7

解决方案

当抽丝剥茧找到问题的根本原因时,解决方案也就来了,那就是 换一个包 😂。

使用替代包mysqlclient (它是MySQL-python的分支并且支持Python3)

  • • conda安装 - conda install mysqlclient
  • • pip安装 - pip install mysqlclient==2.1.1

参考


本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!

相关推荐
花酒锄作田1 天前
使用 pkgutil 实现动态插件系统
python
前端付豪1 天前
LangChain链 写一篇完美推文?用SequencialChain链接不同的组件
人工智能·python·langchain
曲幽1 天前
FastAPI实战:打造本地文生图接口,ollama+diffusers让AI绘画更听话
python·fastapi·web·cors·diffusers·lcm·ollama·dreamshaper8·txt2img
老赵全栈实战1 天前
Pydantic配置管理最佳实践(一)
python
jiayou641 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
阿尔的代码屋1 天前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
AI探索者2 天前
LangGraph StateGraph 实战:状态机聊天机器人构建指南
python
AI探索者2 天前
LangGraph 入门:构建带记忆功能的天气查询 Agent
python
FishCoderh2 天前
Python自动化办公实战:批量重命名文件,告别手动操作
python