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

Ролята не съществува и не може да се създаде база данни, когато се използва PostgreSQL

Добавете потребителско име към вашия database.yml , може и да използва името на вашето приложение (или някакъв вариант на името) като потребителско име, аз ще използвам app_name като заместител:

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

След това създайте потребителя (известен още като "роля") в PostgreSQL с помощта на psql.exe :

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

Първият ред е във вашия терминал, следващите два са вътре в psql . След това направете вашия rake db:create .

User user вероятно е по подразбиране, но user вече е взето за други цели в PostgreSQL, така че ще трябва да го цитирате, за да запазите случая, ако искате да използвате User като потребителско име:

postgres=# create role "User" login createdb;

Така или иначе е по-добре да създадете по един потребител на приложение.

Ще искате да направите подобни неща за вашия test запис в database.yml също.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Драйвер JDBC PostgreSQL с Android

  2. объркване на postgresql порт 5433 или 5432?

  3. Промяна на базата данни за разработка на Django от SQLite по подразбиране към PostgreSQL

  4. PostgreSQL поддържа ли прозрачно компресиране на таблици (фрагменти)?

  5. Ограничението на Postgres UNIQUE предполага ли индекс?