pip成功安装mysql包后导入仍报ModuleNotFoundError问题求助
根因说明
你安装的mysql是PyPI上的占位包,仅用于依赖安装mysqlclient,本身不包含mysql.connector模块,因此导入时会抛出模块不存在报错。
排查步骤
- 首先确认Spyder内核对应的Python环境,避免pip安装到了其他Python环境,在Spyder控制台执行以下代码:
import sys print(sys.executable)
确认输出路径为你当前使用的Anaconda安装路径下的Python可执行文件。
- 检查当前环境已安装的mysql相关包,执行命令:
pip list | findstr mysql
若输出仅包含mysql和mysqlclient,则可确认是包安装错误导致的问题。
修复方案
方案1:使用官方MySQL连接器(适配import mysql.connector写法)
- 卸载已安装的无效包:
pip uninstall -y mysql mysqlclient
- 安装官方提供的连接器包:
pip install mysql-connector-python
- 安装完成后在控制台执行
import mysql.connector验证,无报错即可正常运行脚本。
方案2:继续使用mysqlclient
若可调整代码导入逻辑,无需使用mysql.connector的写法,直接使用mysqlclient对应的导入语句即可:
import MySQLdb
该包API与mysql.connector存在差异,需对应调整业务代码写法。
内容的提问来源于stack exchange,提问作者Stücke
相关产品推荐
相关产品推荐

