当我尝试连接我的本地django到Amazon RDS MySQL数据库时,我收到一个2026,SSL连接错误

huwehgph  于 2023-03-13  发布在  Go
关注(0)|答案(1)|浏览(148)

我正在尝试连接Amazon RDS MySQL。当我在终端上运行它时,它工作正常。我可以轻松地连接,但当我尝试使用Django应用连接它时,它给予我这个错误:
django.db.utils.OperationalError:(2026,“SSL连接错误:SSL_CTX_set_tmp_dh失败“)
我在www.example.com中的数据库配置settings.py

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'llda_waterquality',
    'HOST': '<host_name>',
    'USER': '<rds_uname>',
    'PASSWORD': '<password>',
    'PORT': '3306',

}

}

cgh8pdjw

cgh8pdjw1#

您可能丢失了<ssl>.pem文件。您必须在DATABASE OPTIONS设置中指定它。
https://docs.djangoproject.com/en/2.1/ref/databases/#connecting-to-the-databasehttps://mysqlclient.readthedocs.io/user_guide.html#functions-and-attributes

DATABASES['default']['OPTIONS'] = {
    'ssl': {'ca': os.path.join(os.path.dirname(__file__), 'rds', 'mysql-ssl-ca-cert.pem')}
}

请记住,您必须指定pem文件的绝对路径,还可以查看this答案。

相关问题