我已成功导入PostgreSQL转储并将其与我的Rails应用程序链接。
尝试运行rails迁移时出现此错误:
ActiveRecord :: NoDatabaseError:FATAL:role" username"不存在
其中"用户名"是我的帐户名称。我在database.yml文件中有以下配置:
development: &default
adapter: postgresql
encoding: unicode
database: name_of_the_db
host: localhost
username: postgres
password: password
template: template0
我想使用 postgres 用户运行迁移,而不是像this answer那样创建新角色。
为什么用户名被用作迁移的角色?我以为将使用database.yml中定义的用户。
如何配置 postgres ?
编辑:
我对pg_hba.conf文件进行了以下更改:
# Database administrative login by Unix domain socket
local all postgres password
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all password
但我只能更改用户身份验证的方式,而不能更改迁移时使用的用户。我无法在此文件中看到如何更改它。