PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

django не може да се свърже с RDS postgresql

Редактиране:

Току-що прегледах това отново и имам по-лесен начин.

Когато се опитвате да използвате съществуваща RDS база данни с Django на EC2 или EB, ще трябва да коригирате групите за сигурност и след това да получите правилните параметри и да ги зададете като променливи на средата (RDS_*)

1) Създайте RDS и съпоставете тези:

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) Задайте тези, като използвате например eb setenv

3) Отидете до вашия екземпляр EC2/EB и вземете групата за сигурност за това, напр. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf

4) Отидете до панела за вашето RDS копие, превъртете надолу до Групи за сигурност и отбележете коя група за сигурност има. напр. rds-launch-wizard-1 (ab-sdjfalkajsdf39)

5) Изберете RDS групата за сигурност и добавете входящо правило с тип:PostgreSQL (или каквото и да е db, което използвате) и използване на екземпляра EC2 или EB, който сте получили в стъпка 2 като източник (awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf ). Диапазонът на протокола и порта трябва да се попълни автоматично.

6) Запазете го

Това е.

Оригинал:

За всеки, който се натъкне на този въпрос:

Когато се опитвате да използвате съществуваща RDS база данни с Django на EC2 или EB, ще трябва да коригирате групите за сигурност и след това да получите правилните параметри и да ги зададете като променливи на средата (RDS_*)

1) Създайте RDS и съпоставете тези:

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) Задайте тези, като използвате например eb setenv

3) Отидете до вашия екземпляр EC2/EB и вземете групата за сигурност за това, напр. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf и за балансиращото натоварване:awseb-e-adsfadsf-stack-AWSEBLoadBalancerSecurityGroup-asdfadsf

4) Отидете до панела за вашето RDS копие, превъртете надолу до Групи за сигурност и отбележете коя група за сигурност има. напр. rds-launch-wizard-1 (ab-sdjfalkajsdf39)

5) Щракнете върху промяна за екземпляра на RDS и в настройката Групи за сигурност в средата добавете групата за сигурност на балансиращото натоварване, която сте намерили по-горе. Трябва да има предложения.

6) Отидете на таблото за управление на EC2 и изберете групи за сигурност от менюто вляво.

7) Изберете групата за сигурност на балансиращото натоварване и добавете изходящо правило. Типът трябва да е вашият RDS тип (PostgreSQL), а дестинацията трябва да е персонализирана и групата за сигурност на RDS екземпляра. Запазване.

8) Направете същото за входящи, използвайте същия RDS тип и дестинация

9) Изберете RDS групата за сигурност и добавете входящо правило, подобно на 8, но използвайки екземпляра EC2 или EB, който сте получили в стъпка 2.

10) Запазване, готово. Вече трябва да могат да работят заедно.

Не съм 100% сигурен, че всички тези стъпки са необходими, една или две може да не са, но това ми свърши работата.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Работете с Postgres/PostGIS View в SQLAlchemy

  2. RETURNING причинява грешка:липсващ запис от клауза FROM за таблица

  3. Как да мигрирам от SQLite към PostgreSQL (Rails)

  4. Псевдоним на функция за функцията по подразбиране на Postgres

  5. Променете празния низ на NULL, когато колоната има ограничение DATE