我有一个运行在ELB上的Django应用程序,它连接到MySQL RDS数据库。
我最近检查了一下,它不再工作(应用程序运行良好,但是当我尝试部署或运行任何manage.py db相关命令时收到以下错误。我可以手动连接到RDS DB,而不会出现问题。 / p>
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的数据库选项中,但是无论如何仍然会出现相同的错误。
任何帮助都会非常感激,因为我目前很沮丧。
谢谢!
答案 0 :(得分:0)
如果您使用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 guide.处找到文件。最好同时阅读本指南,以进行其他所有假设的健全性检查。