项目场景:
python项目启动时报错,但是mysql相关的驱动都已经安装,mysqlclient、pymysql等
File "/Users/yomi/opt/anaconda3/envs/ticketproject/lib/python3.11/site-packages/sqlalchemy/dialects/mysql/mysqldb.py", line 152, in import_dbapi
return __import__("MySQLdb")
^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'MySQLdb'
原因分析:
提示:确认你不是在尝试安装
MySQLdb
,这个库只兼容 Python 2。 -对于 Python 3,选择mysqlclient
或PyMySQL
作为替代。它们都是与MySQLdb
类似,但兼容 Python 3 的库
解决方案:
提示:在终端中激活你的虚拟环境(如果你使用的是虚拟环境)
使用 pip
安装 mysqlclient
或 PyMySQL
:
pip install mysqlclient
pip install pymysql
如果你使用的是 PyMySQL
,而你的代码中存在 import MySQLdb
语句,需要将它替换为:
import pymysql
pymysql.install_as_MySQLdb()
这样可以在未修改大量现有代码的情况下,确保它们可以使用 PyMySQL
作为 MySQLdb
的替代。
版权归原作者 YomiCoding 所有, 如有侵权,请联系我们删除。