ActiveRecord :: NoDatabaseError:致命:当我尝试在rails中迁移bd时,角色“postgres”不存在

时间:2018-05-31 02:27:04

标签: ruby-on-rails postgresql activerecord

我克隆了朋友的git repo,我正在尝试迁移数据库。我开始使用postgres,但是当我运行rails db:migrate时,我不断收到错误:

Rails Error: Unable to access log file.

ActiveRecord::NoDatabaseError: FATAL:  role "postgres" does not exist 

我已经在线尝试了所有可用的解决方案,但仍然遇到同样的错误。有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:6)

尝试以下

设置Postgres 为我们将在下一步中创建的Rails应用创建Postgres用户。为此,请切换到Postgres用户:

su - postgres

然后创建一个用户(或#34;角色",如Postgres所说的那样):

create role myapp with createdb login password 'password1';

并确保您拥有config/database.yml

development:
  adapter: postgresql
  encoding: unicode
  database: myapp_development
  pool: 5
  username: myapp
  password: password1

test:
  adapter: postgresql
  encoding: unicode
  database: myapp_test
  pool: 5
  username: myapp
  password: password1