GNU/Linux >> Linux の 問題 >  >> Linux

/var/run/postgresql/.s.PGSQL.5432 に関するエラーが発生した場合、Postgres にアクセスするにはどうすればよいですか?

Postgres サービスがエラーなしで稼働している場合、または Postgres サービスの開始時にエラーが発生していないにもかかわらず前述のエラーが発生する場合は、次の手順に従ってください

ステップ 1:05 の実行 デバイスで実行されているすべての postgres クラスターが一覧表示されます

例:

Ver Cluster Port Status Owner    Data directory               Log file
9.6 main    5432 online postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log

ほとんどの場合、ステータスはダウンになります。 Postgres クラスターとサービスを再起動してみてください

ステップ 2:pg_ctlcluster を再起動する

#format is pg_ctlcluster <version> <cluster> <action>
sudo pg_ctlcluster 9.6 main start

#restart postgresql service
sudo service postgresql restart

ステップ 3:ステップ 2 が失敗し、エラーが発生しました

このプロセスが成功しない場合、エラーがスローされます。 )

FATAL: could not access private key file "/etc/ssl/private/ssl-cert-snakeoil.key": Permission denied
Try adding `postgres` user to the group `ssl-cert`

ステップ 4:postgres の所有権を確認する

22 であることを確認してください 30 の所有者です 例:47

ステップ 5:Postgres ユーザーが ssl-cert ユーザー グループに属していることを確認する

それは私に起こり、「ssl-cert」グループから Postgres ユーザーを誤って削除したことが判明しました。以下のコードを実行して、ユーザー グループの問題を修正し、権限を修正します

#set user to group back with
sudo gpasswd -a postgres ssl-cert

# Fixed ownership and mode
sudo chown root:ssl-cert  /etc/ssl/private/ssl-cert-snakeoil.key
sudo chmod 740 /etc/ssl/private/ssl-cert-snakeoil.key

sudo service postgresql restart

複数の PostgreSQL バージョンがインストールされている可能性があります。もしそうなら、他のバージョンのデフォルトはおそらく 52 です しかし 67 あなたの 79 おそらくデフォルトで 82 にリンクされています .

試す

psql -h /tmp

それが機能する場合、上記が問題です。 98 を追加できます あなたの 101 に ユーザーのデフォルトをローカルで変更します。

そうでない場合 PostgreSQL が実際に動作していることを確認してください

ps aux |grep postgres

そうでない場合は、開始します。どのようにインストールしたかによって異なりますが、119 経由になります。 または 120 パッケージを使用してインストールした場合のコマンド


<ブロック引用>

psql:サーバーに接続できませんでした:そのようなファイルやディレクトリはありませんサーバーはローカルで実行されており、Unix ドメイン ソケットで接続を受け入れていますか?"/var/run/postgresql/.s.PGSQL.5432"?

このエラーは通常、サーバーが実行されていないことを意味します。 135 に基づく 出力とコメントのスレッドは、142 によるものでした メインパッケージが何らかの形でアンインストールされています。 152 でアンインストールが呼び出されていないため 161 へのオプション 、データと構成ファイルはまだそこにあるので、 174 問題を解決できます。


Linux
  1. Ubuntu 14.04「エントリーファイルで再生Uriを取得しませんでした:/// *」?

  2. CentOS / RHEL 7 で systemd-tmpfiles が /tmp/ または /var/tmp (tmpwatch の置き換え) をクリーンアップする方法

  3. CentOS / RHEL :logrotate を使用して /var/log/wtmp および /var/log/btmp ファイルをローテーションする方法

  1. /usr と /var を別のパーティションまたはディスクに移動する方法

  2. /var/www/... の Django static_root - collectstatic へのアクセス許可がありません

  3. /dev/shm/ と /tmp/ はいつ使用する必要がありますか?

  1. Linuxは複数の連続したパスセパレーター(/ home //// username /// file)をどのように処理しますか?

  2. Bash =〜正規表現とHttps://regex101.com/?

  3. 推奨される使用方法に従って、Web サイトは /var/ または /usr/ に配置する必要がありますか?