我在Heroku上部署了Cookiecutter Django应用。现在,我想将AWS RDS用作生产中的数据库。
我已经使用此问题https://stackoverflow.com/questions/35247347/point-heroku-application-to-aws-rds-database
和另一个博客来设置所有内容。
因此在AWS RDS上创建了db,根证书位于我的根文件夹中,并且设置了heroku变量。在我的实例上启用了SSL并设置了安全组。
当我推送到Heroku时,它可以很好地部署,但是release命令无法引发此错误:
django.db.utils.OperationalError: FATAL: database "mydatabasename" does not exist
我已经尝试解决此问题,但到目前为止无法解决。
当我运行heroku config --app myapp
时,您可以看到我的变量:
DATABASE_URL: postgresql://myusername:mypass@mydatabasename.ce4s6szy2j0h.eu-central-1.rds.amazonaws.com/heatbeat-test2?sslrootcert=rds-combined-ca-bundle.pem
DJANGO_ALLOWED_HOSTS: example.de,example.herokuapp.com
DJANGO_DEBUG: False
DJANGO_SETTINGS_MODULE: config.settings.production
POSTGRES_DB: mydatabasename
POSTGRES_HOST: mydatabasename.ce4s6szy2j0h.eu-central-1.rds.amazonaws.com
POSTGRES_PASSWORD: mypass
POSTGRES_PORT: 5432
POSTGRES_USER: myusername
PYTHONHASHSEED: random
所以,我确定数据库已经存在。 Si我认为它必须是不正确的POSTGRES_DB或DATABASE_URL。我还尝试使用postgres
作为POSTGRES_DB的值,因为文档说这是默认名称。还是同样的错误,实际上我将数据库的名称设置为mydatabasename,因此应该是正确的设置。
或者也许我必须在创建数据库后在AWS上启动一些东西?
我感觉我是如此亲密,这只是我看不到的一个小问题。...
有人可以帮忙吗?非常感谢,在此先感谢