将django部署到AWS Lambda连接到RDS MySQL,显示错误:NameError:名称'_mysql'未定义

Rag*_*wda 3 mysql django lambda zappa

使用连接到 RDS MySQL 的 zappa 将 django 部署到 AWS Lambda,无法部署并显示错误: NameError: name '_mysql' 未定义:

zappa 更新开发给出错误: 错误:警告!对已部署 lambda 的状态检查失败。对“/”的 GET 请求产生 502 响应代码

AWS Cloudwatch 日志:

在 import MySQLdb as Database File "/var/task/MySQLdb/ init .py" 中,第 24 行,在 version_info、_mysql.version_info、_mysql 中。文件名错误:名称“_mysql”未定义

我的settings.py数据库配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'raags-instance', # DB Instance created in AWS RDS
        'USER': 'xyz',
        'PASSWORD': 'passwordpassword',
        'HOST': '*********.us-east-2.rds.amazonaws.com',
        'PORT': 3306,
    }
}
Run Code Online (Sandbox Code Playgroud)

对于DATABASES = {}成功部署,我是 zappa 部署和无服务器架构的新手,请协助,我无法在任何地方找到解决方案。提前致谢

Rag*_*wda 6

该问题是由于 MySQLdb 目录中缺少 .mysql 文件造成的

我尝试了一种解决方法,导入 pymysql 并安装..转到django_project/django_project/ init .py文件(与settings.py所在的目录相同)

添加以下内容。再次编码并部署,这对我有用

import pymysql
pymysql.install_as_MySQLdb()
Run Code Online (Sandbox Code Playgroud)