Li FRANK 下午好🌅🌅🌅
本答案参考通义千问
这个错误提示是 Django 在尝试连接到 MySQL 数据库时遇到问题,具体来说是由于 Windows 错误 10061("由于目标计算机积极拒绝,无法连接")导致的连接失败。要解决这个问题,你可以按照以下步骤操作:
解决方案:
- 检查数据库配置:
- 确保你的 Django 配置文件 (
settings.py
) 中的 DATABASES
部分正确配置了数据库连接信息,特别是 ENGINE
、NAME
、USER
、PASSWORD
和 HOST
(如果本地运行,通常是 'localhost'
或 '127.0.0.1'
)。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 或者 'django.db.backends.postgresql', 根据你的数据库类型
'NAME': 'your_database_name',
'USER': 'your_username',
'PASSWORD': 'your_password',
'HOST': '127.0.0.1', # 或者 'localhost'
'PORT': '3306', # 如果使用的是非默认端口
}
}
-
检查防火墙设置:
- 确认你的操作系统防火墙没有阻止 Django 访问数据库。如果是 Windows,你可以临时关闭防火墙或者添加一个例外来允许 MySQL 服务访问。
-
MySQL 服务是否运行:
- 检查 MySQL 服务是否正在运行。在 Windows 上,可以通过服务管理器 (
services.msc
) 或命令行 (net start mysql-server
) 启动。
-
MySQL 客户端连接测试:
- 使用命令行工具(如
mysql -u your_username -p
)尝试手动连接到数据库,以确认是否能成功连接。
-
修改 Django 配置:
- 如果使用的是非标准端口,确保在 Django 配置中设置了正确的
PORT
。
-
重试迁移:
- 关闭 Django 应用,然后再次运行
python manage.py makemigrations
和 python manage.py migrate
命令。
-
更新或安装依赖:
- 确保你安装了与 Django 配置兼容的 MySQL 客户端驱动程序。如果是 Python 3.11,可能需要安装
pymysql
或 mysqlclient
。
pip install pymysql # 或者
pip install mysqlclient
如果以上步骤都无法解决问题,可能需要进一步检查网络配置或联系数据库管理员确认是否有其他安全策略限制了连接。