1

redshiftのデフォルトデータベース以外のデータベースに私のdjangoアプリケーションを接続する必要があります。デフォルトのデータベースに接続すると、接続は成功しています。私はデフォルトではありませんデータベースに接続すると、それはあなたがデータベースではなく、スキーマに接続PostgreSQLで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

私はpsshop2を使ってRedshiftに接続していますが、正常に動作するので、データベースがそのクラスタ上に存在すると仮定して、なぜこれがうまくいかないのか理由はありません。 SQL WorkbenchなどのSQLクライアントを使用して同じデータベースに接続し、同じ問題が発生していないかどうかを確認してください。 – Yankee

答えて

0

をというエラーメッセージが表示されます。あなたのsettings.py NAMEに接続するデータベースの名前にする必要があります。 PostgreSQLのデフォルトデータベースはpostgresです。

USERは、ログインする実際のPostgreSQLユーザーです。再び既定値はpostgresです。

2つの別個のものです。 PostgreSQLにユーザpostgresとしてログインし、データベースtestに接続することができます。

+0

質問を編集しました。それは間違いだった。上記のシナリオで、接続するデータベースの名前は「テスト」です。 redshiftでは、デフォルトのデータベースを 'default_one'という名前で設定しました。私は私のdjangoのアプリを 'default_one'に接続すると成功です。私が 'テスト'に接続すると、エラーが発生します。 – Dilani

+0

テストデータベースは存在しますか?もしそうなら、あなたがログインしているユーザーはそれにアクセスできますか? –

+0

はい、データベースが存在し、ユーザーもデータベースにアクセスできます。 – Dilani

関連する問題