首页 > 解决方案 > 自 SSL/TLS 证书更新以来,Django 应用程序未连接到 RDS

问题描述

我有一个在 ELB 上运行的 Django 应用程序,连接到 MySQL RDS db。

我最近检查了一下,它不再工作了(应用程序运行良好,但是当我尝试部署或运行​​任何与 manage.py db 相关的命令时出现以下错误。我可以手动连接到 RDS DB 没有问题。

django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on '****.eu-west-1.rds.amazonaws.com' (110)"). 

我相信这与 SSL/TLS 证书的最新更新有关 - 但是我已经进入我的 RDS 仪表板并在那里更新到新的 2019 版本,但我仍然收到此错误。

有谁知道这可能是什么原因造成的?在证书更改之前它运行良好,所以我只能假设它是相关的。

我已经尝试将 ssl-ca 添加rds-ca-2019-root.pem到 django 的数据库选项中,但无论如何仍然会出现相同的错误。

任何帮助将不胜感激,因为我目前很困惑。

谢谢!

标签: djangoamazon-web-servicesamazon-elastic-beanstalkamazon-rds

解决方案


如果您使用 TLS 进行数据库连接,那么我使用 AWS 提供的“组合”ca 捆绑包取得了最大的成功。

该文件可在https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem中找到,该文件在Using SSL/TLS to Encrypt a Connection to a DB Instance 指南中被引用。. 最好也查看本指南以健全检查您的任何其他假设。


推荐阅读