2013-11-25 34 views
12

私はbrewを使用してインストールしています。PostgreSQLはTCP/IPソケットのマーベリックを作成できませんでした

エラーメッセージ(S):

私はエラーが

LOG: could not bind IPv6 socket: Address already in use 
HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry. 
LOG: could not bind IPv4 socket: Address already in use 
HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry. 
LOG: could not bind IPv6 socket: Address already in use 
HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry. 
WARNING: could not create listen socket for "localhost" 
FATAL: could not create any TCP/IP sockets 

postgres -D /usr/local/var/postgres 

を実行すると、同じエラーを作成受信

postgres 

を呼び出す

createdb 

createdb: could not connect to database template1: FATAL: password authentication failed for user "thomasmurphy" 

は、私はコマンドラインツール を更新 *アンインストールして、PGの宝石を再インストールアンインストールして再インストールpostgresの *を試してみた何、それから言って、二回私のパスワードの入力を求められます*醸造医のニーズをすべて満たす * pg_hba.confの権限を編集する *上記のディレクトリが含まれていることを確認する.bash_profile

Postgresは私の仕事用コンピュータ、つまりマーベリックス上で完璧に動作しているので、これは私を多少の苦境に襲わせます。これを解決しようと思っている他のベクトルは何ですか?

+0

'すでに別のポストマスターがポート5432で動作していますか? - そうですか? –

+0

@RichardHuxton公正な質問です。しかし、いいえ、5432で接続が実行されていません。 –

+0

どのようにチェックしましたか? –

答えて

4

エラーはPostgreSQLが実行されているためです。どのように私は知っていますか?あなたのパスワードを拒否しているからです。それはかなり明確です。

本当の問題は、信頼アクセスを与えるためにpg_hba.confを変更した後にPostgreSQLを再起動する必要があることでしょう。そして、次のことができます。PostgreSQLの起動や再起動の条件で

ALTER USER foo WITH PASSWORD 'bar'; 

、この質問を参照してください:あなたが得るHow to start PostgreSQL server on Mac OS X?

+0

このマシンにインストールされているPostgreSQLをきれいにするので、私はもうこの問題を再現できません。この回答は、私が持っていた問題と一致するようですので、私は受け入れます。 –

7

エラーがあなたのホストbeacauseあるご/etc/hostsファイルをbroken.checkです。

127.0.0.1 localhostをホストの最初の行に置きます。

+0

それは私の場合には機能しましたが、理由を説明できません。 hostsファイルにそのエントリを持たないことで、何が間違っているのかも分かりますか? –

+0

localhostは127.0.0.1と同じではありません。一部のアプリケーションでは、ローカルホストはIPアドレスに変換する必要はありません。しかし、 – gpxlcj

+0

しかし、ここで翻訳する必要があります.PostgreSQLとhostsのconfigureファイルのどちらもローカルホストとIP間の関連付けを設定しません。 – gpxlcj

2

Linux:コマンドラインでifconfigを実行して、ループバックインターフェイスが起動していることを確認してください。起動していない場合は、/sbin/ifconfig lo 127.0.0.1を使用して呼び出すことができます。

+0

チャームのように働いた。ありがとう! – Sathish

0

/etc/hostsが壊れていない可能性があります。たとえ正しい行が/etc/hostsにあっても、localhostのDNSルックアップを壊す何か他のものである可能性があります。

nslookup localhostを確認し、結果として127.0.0.1が表示されているかどうかを確認してください。また、getent hosts localhostで確認してください。また、Postgresのユーザーが実行されているので、もチェックしてください。

関連する問題