1

Je dois connecter mon application django à une base de données autre que la base de données par défaut dans redshift. Lorsque je le connecte à la base de données par défaut, la connexion est réussie. lorsque je me connecte à une base de données qui ne sont pas la valeur par défaut donne un message d'erreur indiquantConnexion à une base de données autre que la base de données par défaut dans redshift

"django.db.utils.OperationalError: FATAL: database "test" does not exist

DATABASES = { 
    'default': { 
     'NAME': 'test', 
     'ENGINE': 'django.db.backends.postgresql_psycopg2', 
     'USER': 'test', 
     'PASSWORD': '######', 
     'HOST': '############.redshift.amazonaws.com', 
     'PORT': #### 
    } 
} 
+0

J'utilise psycopg2 pour me connecter à Redshift et cela fonctionne bien, donc il n'y a aucune raison pour que cela ne fonctionne pas, en supposant que la base de données existe sur ce cluster. Essayez de vous connecter à la même base de données à l'aide d'un client SQL tel que SQL Workbench et vérifiez si vous rencontrez le même problème. – Yankee

Répondre

0

Dans PostgreSQL vous connecter à une base de données, et non pas un schéma. Dans votre settings.py NAME devrait être le nom de la base de données que vous souhaitez vous connecter. La base de données par défaut pour PostgreSQL est postgres.

USER est l'utilisateur PostgreSQL réel auquel vous voulez vous connecter. Encore une fois, la valeur par défaut est postgres.

Ce sont deux choses distinctes. Vous pouvez être connecté à PostgreSQL en tant qu'utilisateur postgres et connecté à la base de données test.

+0

J'ai modifié la question. C'était une erreur. Dans le scénario ci-dessus, le nom de la base de données à laquelle je souhaite me connecter est 'test'. En redshift, j'ai configuré la base de données par défaut avec le nom 'default_one'. Lorsque je connecte mon application django à 'default_one', cela fonctionne. lorsque je me connecte à 'test', cela provoque une erreur. – Dilani

+0

La base de données de test existe-t-elle? et si c'est le cas, l'utilisateur vous connecte-t-il pour y avoir accès? –

+0

Oui, la base de données existe et l'utilisateur y a également accès. – Dilani