sql >> Databasteknik >  >> RDS >> PostgreSQL

django kan inte ansluta till RDS postgresql

Redigera:

Har precis kört igenom det här igen och har ett enklare sätt.

När du försöker använda en befintlig RDS-databas med Django på EC2 eller EB, måste du justera säkerhetsgrupperna och sedan hämta rätt parametrar och ställa in dem som miljövariabler (RDS_*)

1) Skapa RDS och matcha dessa:

Environment variables - RDS console label

RDS_HOSTNAME - Endpoint (this is the hostname)
RDS_PORT - Port
RDS_DB_NAME –  DB Name
RDS_USERNAME –  Username
RDS_PASSWORD – Password you set for your DB

2) Ställ in dem med till exempel eb setenv

3) Gå till din EC2/EB-instans och hämta säkerhetsgruppen för att t.ex. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf

4) Gå till panelen för din RDS-instans, scrolla ner till Säkerhetsgrupper och notera vilken säkerhetsgrupp den har. t.ex. rds-launch-wizard-1 (ab-sdjfalkajsdf39)

5) Välj RDS-säkerhetsgruppen och lägg till en inkommande regel med typen:PostgreSQL (eller vilken db du nu använder), och använd EC2- eller EB-instansen som du fick i steg 2 som källa (awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf ). Protokoll och portintervall bör fyllas i automatiskt.

6) Spara den

Det var allt.

Original:

För alla som snubblar över denna fråga:

När du försöker använda en befintlig RDS-databas med Django på EC2 eller EB, måste du justera säkerhetsgrupperna och sedan hämta rätt parametrar och ställa in dem som miljövariabler (RDS_*)

1) Skapa RDS och matcha dessa:

Environment variables - RDS console label

RDS_HOSTNAME - Endpoint (this is the hostname)
RDS_PORT - Port
RDS_DB_NAME –  DB Name
RDS_USERNAME –  Username
RDS_PASSWORD – Password you set for your DB

2) Ställ in dem med till exempel eb setenv

3) Gå till din EC2/EB-instans och hämta säkerhetsgruppen för att t.ex. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf och för lastbalanseraren:awseb-e-adsfadsf-stack-AWSEBLoadBalancerSecurityGroup-asdfadsf

4) Gå till panelen för din RDS-instans, scrolla ner till Säkerhetsgrupper och notera vilken säkerhetsgrupp den har. t.ex. rds-launch-wizard-1 (ab-sdjfalkajsdf39)

5) Klicka på modifiera för RDS-instansen och i inställningen Säkerhetsgrupper i mitten, lägg till säkerhetsgruppen för lastbalanserare som du hittade ovan. Den borde ha förslag.

6) Gå till EC2 Dashboard och välj säkerhetsgrupper från menyn till vänster.

7) Välj säkerhetsgruppen för lastbalanserare och lägg till en utgående regel. Typ ska vara din RDS-typ (PostgreSQL) och destinationen ska vara anpassad och RDS-instansens säkerhetsgrupp. Spara.

8) Gör samma sak för Inkommande, använd samma RDS-typ och destination

9) Välj RDS-säkerhetsgruppen och lägg till en inkommande regel, liknande 8, men med hjälp av EC2- eller EB-instansen som du fick i steg 2.

10) Spara, du är klar. De borde kunna arbeta tillsammans nu.

Jag är inte 100% säker på att alla dessa steg är nödvändiga, en eller två kanske inte är det, men det här gjorde jobbet gjort för mig.




  1. Hur ställer man in "börja med" i sekvensen för att välja frågeresultat i SQL-server?

  2. Ta bort poster från en tabell där <max antal för ett fält och behåll högsta nummer

  3. MySQL / PHP Sammanfoga tabeller utan att alltid ha en gemensam kolumn

  4. Cachning i JDBC