1

当我尝试在端口 80 上运行 webrick 时出现 postgres 错误,如下所示:

rvmsudo rails s -p 80

然后我得到这个错误:

Users/user/.rvm/gems/ruby-1.9.3-p194@app/gems/activerecord-3.2.12/lib/active_record/connection_adapters/postgresql_adapter.rb:1208:in `initialize': FATAL:  role "root" does not exist (PG::Error)

加上更多的堆栈跟踪。

我尝试将我的用户更改为root在 database.yml 中,但没有运气。有什么建议么?

编辑:尝试在本地运行,而不是用于生产。

4

1 回答 1

0

首先,我同意不以 root 身份运行生产 Web 服务器。这只是个坏主意。

至于这里发生了什么,您没有提供 PostgreSQL 登录凭据,因此它发送的是进程所有者的名称,并且没有密码。您显然还使用了一种在 PostgreSQL 端不需要密码的身份验证方法。我建议通过 tcp/ip 进行连接(将 localhost 指定为主机),并确保将 auth 类型pg_hba.conf设置为md5(但如果您不能这样做,则使用客户端证书可能可以使用证书身份验证)。

从那里确保正确指定了用户名和密码。

于 2013-05-05T08:21:31.737 回答