[解決済み】PG::ConnectionBad: fe_sendauth: パスワードが供給されない
質問
ローカルの postgres データベースで "rake test" を実行しようとすると、上記の例外がスローされます。
以下は、私のpg_hba.confファイルです。 # Unixドメインソケットによるデータベース管理ログイン ローカルのすべてのpostgresピア
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all username peer
local myapp_dev myapp md5
local myapp_test myapp md5
local myapp_prod myapp md5
#local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres peer
#host replication postgres 127.0.0.1/32 md5
#host replication postgres ::1/128 md5
そして、以下は私の database.yml の関連するセクションです。
test:
adapter: postgresql
database: myapp_test
pool: 5
timeout: 5000
host: localhost
username: username
password:
実際のdatabase.ymlでは、'username'は私が実際にログインしているユーザー名で置き換えられています。 認証方法は「peer」と定義されているので、パスワードは必要ないはずです。
また、Postgresを再起動するようにしました。
sudo -u postgres pg_ctlcluster 9.3 main restart
他に何か足りないものはありますか?
解決方法は?
localhost
というのは、ホストがTCPコネクションを指すので、認証方式が
md5
(パスワードが必要)に従って
pg_hba.conf
:
# IPv4 ローカル接続。 ホストすべて 127.0.0.1/32 md5 # IPv6 ローカル接続。 ホストすべて すべて ::1/128 md5
については
peer
メソッドを使うには、Unix ドメインソケットで接続する必要があり、debian 系の OS を使っているようなので、そのために
/var/run/postgresql
の中に
host
フィールドを使用するか、あるいはまったく使用しないかです (環境変数に指定がない限り、これがデフォルトです)。
EDIT: データベースURIを使用する場合(Rails-4.1よりサポート。 http://weblog.rubyonrails.org/2014/4/8/Rails-4-1/ ) のような構文になる可能性があります。
-
はlocalhostの場合です。
test: "postgresql://localhost/myapp_test"
-
は、デフォルトのUnixソケットドメイン(hostフィールドは空白)。
test: "postgresql:///myapp_test"
関連
-
[解決済み】警告:定数 ::Fixnum は非推奨 新しいモデルを生成するとき
-
[解決済み] Ruby/Rails の「フック」とは何ですか?
-
[解決済み] Mac OS Xにhomebrewがインストールされているかどうかを確認する方法
-
[解決済み] AWS S3です。アクセスしようとしているバケットは、指定されたエンドポイントを使用してアドレスされている必要があります。
-
[解決済み] どなたか、collection_selectをわかりやすく説明していただけませんか?
-
[解決済み] nil:NilClass の未定義メソッド `each' - しかし、なぜ?
-
[解決済み] Herokuの問題 : あなたが探しているページは存在しません。
-
[解決済み] RoRにおけるSpringサーバーの機能とは?
-
[解決済み] Ruby on rails アプリで ES6 (ES2015) を使用するにはどうすればよいですか?
-
[解決済み] PostgreSQLのユーザーパスワードを変更する方法を教えてください。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ActionController::InvalidAuthenticityTokenについて
-
[解決済み] gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み] Ruby on rails "No route matches" (ルートに一致するものがない)。
-
[解決済み] Ruby on Railsのためにnetbeansを構成する方法は?
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] Ruby on Railsでsimple_formを使うさまざまな方法|何が違うの?
-
[解決済み] Herokuの問題 : あなたが探しているページは存在しません。
-
[解決済み] ルビーオンレール モデルから明確な値を選択する
-
[解決済み] 属性を割り当てる場合、引数としてハッシュを渡す必要がある
-
[解決済み】psql: FATAL: ユーザー "postgres" の Ident 認証に失敗しました。