已安装mysql-connector仍报ModuleNotFoundError: No module named 'mysql'问题求助
解决MySQL Connector导入失败的问题
这种环境不匹配的问题我碰到过好多次,别着急,咱们一步步排查解决:
1. 确认Python与pip的环境一致性
Windows系统里经常会同时存在多个Python版本(比如系统自带的、手动安装的、Anaconda环境的),这很容易导致pip安装的包和你运行脚本时用的不是同一个Python环境。
在PowerShell里依次执行以下命令:
- 查看当前运行的Python版本:
python --version - 查看当前
pip对应的Python版本:pip --version
如果两个命令输出的Python版本不一致,说明你用错了pip。此时应该用python -m pip代替直接调用pip,这样能确保使用的是当前Python环境对应的包管理工具。
2. 重新安装MySQL Connector(指定当前Python环境)
执行以下命令,强制在当前Python环境中安装官方的MySQL Connector包:
python -m pip install --force-reinstall mysql-connector-python
这个命令会覆盖已有的安装,确保包被安装到当前Python的site-packages目录下。
3. 验证包是否正确安装
运行以下命令,检查当前Python环境是否能找到mysql.connector:
python -c "import mysql.connector; print('Successfully imported!')"
如果输出Successfully imported!,说明包已经正确安装,此时再运行你的videos.py脚本应该就没问题了。
4. 检查虚拟环境(如果使用了的话)
如果你在项目中使用了虚拟环境(比如venv),一定要确保先激活对应的虚拟环境再执行安装和运行命令:
# 假设你的虚拟环境目录是venv .\venv\Scripts\activate
激活后再重新执行安装命令,然后运行脚本。
5. 排查site-packages路径
如果上面的步骤都没用,你可以手动检查包是否在当前Python的site-packages目录里:
运行以下命令获取site-packages路径:
python -c "import site; print(site.getsitepackages())"
打开输出的路径,查看是否存在mysql文件夹或者mysql_connector_python相关的文件。如果没有,说明安装过程有问题,建议卸载后重新安装:
python -m pip uninstall mysql-connector mysql-connector-python-rf mysql-connector-python python -m pip install mysql-connector-python
内容的提问来源于stack exchange,提问作者Prarthana Charankar




