sql >> Databáze >  >> RDS >> PostgreSQL

django se nemůže připojit k RDS postgresql

Upravit:

Prošel jsem to znovu a máte jednodušší cestu.

Když se pokoušíte použít existující databázi RDS s Django na EC2 nebo EB, budete muset upravit skupiny zabezpečení a poté získat správné parametry a nastavit je jako proměnné prostředí (RDS_*)

1) Vytvořte RDS a spojte je:

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) Nastavte je pomocí například eb setenv

3) Přejděte do své instance EC2/EB a získejte pro ni bezpečnostní skupinu, např. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf

4) Přejděte na panel vaší instance RDS, přejděte dolů na Skupiny zabezpečení a poznamenejte si, kterou skupinu zabezpečení má. např. rds-launch-wizard-1 (ab-sdjfalkajsdf39)

5) Vyberte skupinu zabezpečení RDS a přidejte příchozí pravidlo typu:PostgreSQL (nebo jakákoli db, kterou používáte) a jako zdroj použijte instanci EC2 nebo EB, kterou jste získali v kroku 2 (awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf ). Rozsah protokolu a portů by se měl automaticky vyplnit.

6) Uložte

To je ono.

Originál:

Pro každého, kdo narazí na tuto otázku:

Když se pokoušíte použít existující databázi RDS s Django na EC2 nebo EB, budete muset upravit skupiny zabezpečení a poté získat správné parametry a nastavit je jako proměnné prostředí (RDS_*)

1) Vytvořte RDS a spojte je:

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) Nastavte je pomocí například eb setenv

3) Přejděte do své instance EC2/EB a získejte pro ni bezpečnostní skupinu, např. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf a pro nástroj pro vyrovnávání zatížení:awseb-e-adsfadsf-stack-AWSEBLoadBalancerSecurityGroup-asdfadsf

4) Přejděte na panel vaší instance RDS, přejděte dolů na Skupiny zabezpečení a poznamenejte si, kterou skupinu zabezpečení má. např. rds-launch-wizard-1 (ab-sdjfalkajsdf39)

5) Klikněte na Upravit pro instanci RDS a v nastavení Skupiny zabezpečení uprostřed přidejte skupinu zabezpečení nástroje pro vyrovnávání zatížení, kterou jste našli výše. Měl by obsahovat návrhy.

6) Přejděte na EC2 Dashboard a z nabídky vlevo vyberte skupiny zabezpečení.

7) Vyberte skupinu zabezpečení nástroje pro vyrovnávání zatížení a přidejte odchozí pravidlo. Typ by měl být váš typ RDS (PostgreSQL) a cíl by měl být vlastní a skupina zabezpečení instance RDS. Uložit.

8) Udělejte totéž pro příchozí, použijte stejný typ RDS a cíl

9) Vyberte skupinu zabezpečení RDS a přidejte příchozí pravidlo podobné 8, ale s použitím instance EC2 nebo EB, kterou jste získali v kroku 2.

10) Uložte, máte hotovo. Nyní by měli být schopni spolupracovat.

Nejsem si 100% jistý, že všechny tyto kroky jsou nutné, jeden nebo dva možná ne, ale tohle mi dalo práci.




  1. PHP/MySQL:Vytvořit nové připojení pro každý dotaz?

  2. Mohu použít MySQL LOAD XML LOCAL INFILE, pokud moje řádky nemají 'název'?

  3. Vyžaduje PS/SQL společnosti Oracle specifické řazení položek v sekci `deklarovat` bloku?

  4. Obtížnost s proměnnou délkou zpoždění