PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Rola nie istnieje i nie można utworzyć bazy danych podczas korzystania z PostgreSQL

Dodaj nazwę użytkownika do database.yml , równie dobrze może użyć nazwy aplikacji (lub jakiegoś wariantu nazwy) jako nazwy użytkownika, ja użyję app_name jako symbol zastępczy:

development:
  adapter: postgresql
  encoding: utf8
  database: app_development
  pool: 5
  username: app_name
  password:

Następnie utwórz użytkownika (AKA "role") wewnątrz PostgreSQL za pomocą psql.exe :

$ psql -d postgres
postgres=# create role app_name login createdb;
postgres=# \q

Pierwsza linia jest w twoim terminalu, kolejne dwie są w psql . Następnie wykonaj rake db:create .

User użytkownik jest prawdopodobnie domyślny, ale user jest już używany do innych celów w PostgreSQL, więc musisz go zacytować, aby zachować wielkość liter, jeśli chcesz użyć User jako nazwa użytkownika:

postgres=# create role "User" login createdb;

I tak lepiej jest utworzyć jednego użytkownika na aplikację.

Będziesz chciał zrobić podobne rzeczy dla swojego test wpis w database.yml również.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Schematy PostgreSQL / Przestrzenie nazw z Django

  2. Korzystanie z zapytania Hibernate:dwukropek jest traktowany jako parametr / dwukropek ucieczki

  3. Funkcja Escape dla wyrażeń regularnych lub wzorców LIKE

  4. Najlepsze rozwiązania DBaaS dla PostgreSQL

  5. Zresetuj klucz podstawowy PostgreSQL do 1