ModuleNotFoundError: 找不到名为'MySQLdb'的模块

28 浏览
0 Comments

ModuleNotFoundError: 找不到名为'MySQLdb'的模块

完成我一个 Flask 项目后,我就像其他人一样将它上传到 github 上。大约 2-3 个月后,我在另一台机器上下载了整个 github 仓库来运行它。但是,应用程序无法运行,因为找不到包,会弹出以下消息:

ModuleNotFoundError: No module named \'Flask\'

因此,我最终下载了所有的包,从 Flask,SQLalchemy,等等。但是我卡在了 MySQLdb

(MYAPPENV) C:\Users\hp\myapp>python run.py
Traceback (most recent call last):
  File "run.py", line 1, in 
    from app import app
  File "C:\Users\hp\myapp\app\__init__.py", line 4, in 
    from instance.config import engine
  File "C:\Users\hp\myapp\instance\config.py", line 52, in 
    engine = create_engine("mysql://root:root@localhost/MYAPPDB")
  File "C:\Users\hp\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sqlalchemy\engine\__init__.py", line 425, in create_engine
return strategy.create(*args, **kwargs)
  File "C:\Users\hp\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sqlalchemy\engine\strategies.py", line 81, in create
dbapi = dialect_cls.dbapi(**dbapi_args)
  File "C:\Users\hp\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sqlalchemy\dialects\mysql\mysqldb.py", line 102, in dbapi
    return __import__('MySQLdb')
ModuleNotFoundError: No module named 'MySQLdb'

请问有谁能帮助解决这个问题吗?我正在 Windows 机器上使用 python37。我甚至尝试下载诸如 mysqlclient 等包,但它们并没有起作用。

admin 更改状态以发布 2023年5月24日
0
0 Comments

你可以使用pip安装mysqlclient

如果使用的是Python3,请尝试使用以下命令:

pip3 install mysqlclient

如果使用的是Python2,请使用以下命令:

pip install mysqlclient

0
0 Comments

我已经了解到mysqldb不支持python3。

当你尝试连接到数据库时,似乎默认使用mysql db来连接到数据库!

你需要通过编辑你的DATABASE_URI配置来更改它

但是,在此之前,你需要安装连接器扩展:

使用以下命令:

pip install mysql-connector-python

根据这份文档,你可以编辑你的DATABASE_URI并像这样更改默认连接器:

DATABSE_URI='mysql+mysqlconnector://{user}:{password}@{server}/{database}'.format(user='your_user', password='password', server='localhost', database='dname')

希望这可以帮助你...

0