首页 文章

Rails没有使用Postgres用户帐户

提问于
浏览
3

我在Ubuntu 10.10上使用Rails 3.0和PostgreSQL 8.4,在pg gem上使用Ruby 1.9.2p136 . 当我运行 rake db:migrate 时,我收到错误 FATAL: password authentication failed for user "my_os_user_account" ,当我实际上期望它以database.yml中指定的my_db_username登录数据库时 .

我在pg_hba.conf中为Unix套接字和IP连接配置了md5身份验证,我可以在命令行上使用 psql 登录 . 我也尝试将身份验证设置为信任 . psql 然后允许我登录而不输入密码,但Rails然后给出 FATAL: role "my_os_user_account" does not exist .

这是database.yml:

development:
  adapter: postgresql
  database: my_project_dev
  user: my_db_username
  password: my_password
  pool: 5
  timeout: 5000

用于测试和 生产环境 的其他几乎相同的条目 .

2 回答

  • 1

    username 的正确键实际上是 username 而不是 user . 容易出错,容易修复 .

  • 10

    我遇到了类似的问题 . 但是,我的问题是实际用户名括号和database.yml中的passowrd,如“[admin] ... [passowrd]”,这适用于ruby 1.8.7,但不适用于较新的版本 . 花了整整一天加剧了这一天 . 我意识到读完这篇文章后可能会这样 . (耸耸肩)希望这有助于其他人 .

相关问题