gpt4 book ai didi

ruby-on-rails - PostgreSQL 8.4的rake db :create fails,身份验证问题

转载 作者:行者123 更新时间:2023-12-04 13:06:24 24 4
gpt4 key购买 nike

首先,请原谅我完全的无礼。我确实试图在那儿找到解决方案,但现在我陷入了困境,完全一无所知。

我正在尝试在远程服务器上部署Rails 3应用程序;在本地VM上进行开发时,未显示任何问题。但是现在,当我尝试运行时

rake db:create

它失败,并显示错误(由于我是法语,因此翻译错误):
FATAL : password authentication failed for user <<mylogin>>

这是我的database.yml:
login: &login
adapter: postgresql
username: mylogin
password: mypassword
host: localhost
port: 5432
encoding: UTF8

development:
<<: *login
database: somesite_development

test:
<<: *login
database: somesite_test

production:
<<: *login
database: somesite_production

用户“mylogin”已使用命令行工具“createuser”在postgre-side中创建。已被授权创建数据库。
postgresql.conf将服务器配置为在localhost上监听。
我已经用pg_hba.conf尝试了很多事情,但都没有成功-不管在127.0.0.1上为用户“mylogin”使用哪种方法(身份,密码,md5),身份验证都会失败-尽管我从未遇到过使用/连接/创建数据库的问题psql。

有什么线索吗?

编辑:好的,发现我一直有多么愚蠢……我的用户密码根本没有设置!
我想我忘了分号

用密码xxxx更改用户xxxx;

...我通过请求“SELECT * FROM pg_shadow;”看到了这一点-密码字段为空。由于这个愚蠢的错误,我的生命浪费了三天。

最佳答案

我在这个问题上也停留了很长时间,并转到了各种链接(包括本文中提供的链接)以尝试找到答案,但无济于事。但是,解决方案非常简单。尽管许多其他答案都在正确的 rails 上,但这里还是解决问题的确切步骤:

  • 在您选择的文本编辑器中打开pg_hba.conf文件。 (它位于/etc/postgresql//main中)
  • 导航至以下行:

    #“本地”仅用于Unix域套接字连接

  • 并粘贴在它下面:
      local all         all                 trust

    这将信任所有尝试连接到本地计算机上的psql服务器的Unix用户。 (请参阅页面顶部的文档以获取有关列功能的更多信息)
  • 保存pg_hba.conf文件并退出文本编辑器。
  • 通过运行以下命令重新启动Postgresql服务器:

    服务postgresql重新启动
  • 现在尝试通过运行以下命令来启动psql服务器:

    psql -d -U(或简称为“psql”)
  • 您应该可以顺利登录。

  • *笔记:
    所有这些都假定您具有用于登录的有效psql用户名。如果您不按照下面的链接进行设置:

    设置用户:
    http://erikonrails.snowedin.net/?p=274

    确保您具有有效的postgres用户:
    http://archives.postgresql.org/pgsql-novice/2002-08/msg00072.php

    列出所有现有的psql用户:
    如果要查找“列表用户”或“显示用户”命令,请尝试:

    “从pg_user中选择*;” (登录到psql时)

    祝你好运!

    关于ruby-on-rails - PostgreSQL 8.4的rake db :create fails,身份验证问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5817301/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com