Anaconda Python3.7环境导入MYSQLdb报ModuleNotFoundError问题求助
问题解决步骤
1. 修正导入语句拼写
mysqlclient对应的正确导入写法为import MySQLdb,注意大小写规则:首字母M大写,第二个字母y小写,后接大写的SQL,最后db两个字母小写。你写的MYSQLdb属于拼写错误,先修正导入语句后重新测试。
2. 确认包安装路径与Jupyter内核匹配
Anaconda多环境场景下极易出现包安装到其他环境、Jupyter内核未调用对应环境的问题,按以下步骤排查:
- 在当前报错的Jupyter notebook cell中运行代码,查看当前内核对应的Python路径:
import sys print(sys.executable)
- 根据输出的路径执行对应安装命令:
- 用pip安装:将输出路径中的
python.exe替换为pip.exe,直接在终端执行即可,示例:
"C:\Users\xxx\anaconda3\envs\你的环境名\pip.exe" install mysqlclient- 用conda安装:先在终端激活对应环境后再执行安装命令:
conda activate 你的环境名 conda install -c anaconda mysqlclient - 用pip安装:将输出路径中的
- 安装完成后重启Jupyter内核,再次尝试导入。
3. Windows环境依赖缺失处理
如果安装过程中报错提示缺少VC构建工具,先安装Visual C 2015-2019 构建工具后重试。也可以直接下载对应Python3.7版本、系统位数的预编译mysqlclient wheel包到本地,通过pip本地安装:
pip install 本地wheel包存储路径\mysqlclient-xxx.whl
4. 兼容替代方案
如果以上方案都无法生效,可以使用pymysql替代,接口完全兼容MySQLdb,无需修改原有业务代码:
- 先安装pymysql
pip install pymysql
- 导入前添加兼容代码即可正常使用:
import pymysql pymysql.install_as_MySQLdb() import MySQLdb
内容的提问来源于stack exchange,提问作者msx2381795
相关产品推荐
相关产品推荐

