Django 连接到红移中默认数据库以外的数据库
我需要将django应用程序连接到红移中默认数据库之外的数据库。当我将其连接到默认数据库时,连接成功。当我将它连接到一个非默认数据库时,它会显示一条错误消息 django.db.utils.OperationalError:致命:数据库“测试”不存在Django 连接到红移中默认数据库以外的数据库,django,postgresql,django-models,django-rest-framework,amazon-redshift,Django,Postgresql,Django Models,Django Rest Framework,Amazon Redshift,我需要将django应用程序连接到红移中默认数据库之外的数据库。当我将其连接到默认数据库时,连接成功。当我将它连接到一个非默认数据库时,它会显示一条错误消息 django.db.utils.OperationalError:致命:数据库“测试”不存在 在PostgreSQL中,您连接到的是数据库,而不是架构。在设置中.pyNAME应该是您要连接到的数据库的名称。PostgreSQL的默认数据库是postgres USER是您要登录的实际PostgreSQL用户。默认值也是postgres 它们是
在PostgreSQL中,您连接到的是数据库,而不是架构。在设置中.py
NAME
应该是您要连接到的数据库的名称。PostgreSQL的默认数据库是postgres
USER
是您要登录的实际PostgreSQL用户。默认值也是postgres
它们是两个独立的东西。您可以作为用户
postgres
登录到PostgreSQL,并连接到数据库test我编辑了这个问题。这是一个错误。在上面的场景中,我要连接到的数据库的名称是“test”。在红移中,我已使用名称配置了默认数据库“default_one”。当我将django应用程序连接到“default_one”时,它是成功的。当我连接到“test”时,它会引发错误。测试数据库是否存在?如果存在,您登录的用户是否有权访问它?是的,数据库存在,用户也有权访问它。我使用psycopg2连接到Redshift,它工作正常,因此假设该集群上存在数据库,那么没有理由不这样做。请尝试使用类似SQL Workbench的SQL客户端连接到同一个数据库,看看您是否面临相同的问题。@Dilani-您解决了这个问题吗?我也有相同的问题。
DATABASES = {
'default': {
'NAME': 'test',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': 'test',
'PASSWORD': '######',
'HOST': '############.redshift.amazonaws.com',
'PORT': ####
}
}