"Database URL" 和 "Database Instance" 是同一个id吗?

Are "Database URL" and "Database Instance" the same id?

在按照 this 教程将简单的 Flask 应用程序部署到 AWS RDS 和 ElasticBeanstalk 时,我 运行 遇到错误

sqlalchemy.exc.OperationalError: (OperationalError)
(2003, 'Can\'t connect to MySQL server on
\'flasktest.kedfifydb8esbdk.us-east-1.rds.amazonaws.com\'
((1049, u"Unknown database \'flaskdemo\'"))') None None

python db_create.py

在声明中

SQLALCHEMY_DATABASE_URI = ‘mysql+pymysql://<db_user>:<db_password>@<endpoint>/<db_url>’

什么是<db_url>?不正是RDS管理控制台为DB Instance选择的名称吗?

如果如我所料,情况确实如此,我还可能遗漏什么?

更新征求意见

整个过程最终令人沮丧。 "Push this button"、"click here",然后做这做那,都太容易出错,对程序员没有吸引力。我现在正在寻找一种方法来编写所有部署步骤的脚本。然后这个过程变得可重现和可靠。也就是说,从 GUI 中获得一次正确的体验有助于确定最小的工作设置。 sequel 练习是将本教程转换为脚本。欢迎评论。

我相信这将是您的数据库在实例中的名称,或者具体来说,是数据库名称属性。数据库实例的名称是 RDS 实例本身的名称,而不是 RDS 实例托管的实际数据库。

如果您能找到它,请告诉我...它应该在创建时间之下和用户名之上。如果没有,我可以查看是否可以包括我的 RDS 实例之一的屏幕。

我有同样的错误。确保您正确地记下了 URI 字符串中的参数。看起来 Flash 演示数据库不存在!。

SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://yourusername:dbpassword@endpointhere/dbname'

数据库控制台中摘要下列出的 'DB Name' 参数不是 URI 字符串中的数据库名称!。最坏的情况是创建另一个数据库并记下您的参数。创建数据库时,您应该在 'Database options' 中获取数据库名称。

此外,请确保您的数据库使用了正确的安全组。应从数据库中删除 'default' 安全组,并且您的新安全组必须允许访问您的数据库。

安全 - 安全组

Security Group Here