web-dev-qa-db-ja.com

Postgresqlはローカルで実行され、Unixドメインで接続を受け入れるサーバーです。

postgresql-9.5またはpostgresql-9.6をubuntuにインストールしようとしています16.04または14.04 machine、以下のコマンドを使用してインストールプロセスを実行した後。

Sudo apt-get install update
Sudo apt-get install postgresql postgresql-contrib

しかし、以下のコマンドを使用してターミナルからpsqlを開こうとすると

Sudo su postgres 
psql 

いつもそのちょうど表示しています。

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

私は約10個のstackoverflow.comソリューションを試しましたが、成功しませんでした。髪の毛を全部切る前に手伝ってください:(

$ service postgresql status

● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor prese
   Active: active (**exited) since রবি 2017-03-12 21:45:56 BDT; 23min ago
  Process: 917 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
 Main PID: 917 (code=exited, status=0/SUCCESS)
    Tasks: 0
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/postgresql.service

この行を注意深く見て、なぜ終了したのですか? アクティブ:(2017-03-12 21:45:56 BDTからアクティブ(終了)、23分前

7
Always Sunny

次のコマンドを実行して、postgresqlが実行されているかどうかを確認できます。

service postgresql status

PostgreSQLが起動していない場合は、次のコマンドで起動できます。

service postgresql start
service postgresql status

正常に起動しない場合は、ログで何が起こっているかを確認できます。

tail /var/log/postgresql/postgresql-9.6-main.log

createdbを実行してデータベースを初期化する必要がある場合があります( https://www.postgresql.org/docs/current/static/app-createdb.html を参照):

createdb demo

更新

PostgreSQLが実行されている場合、service postgresql statusしかし、それでも接続できない場合は、PostgreSQLが実際にポート5432または別のポートで実行されているかどうかを確認する必要があります。

netstat -na | grep postgres

更新2

PostgreSQLのdebian/ubuntuのネイティブパッケージは問題があるため、代わりにこれらをインストールすることをお勧めします。 https://www.gab.lc/articles/install_postgresql_9-5_debian_ubunt (replace 9-29-6)。

14
Gab

これは、既存のpostgresqlのバージョンとディレクトリを削除した後、最終的に私の問題を解決した方法です

Sudo apt-get --purge remove postgresql-*
Sudo rm -Rf /etc/postgresql /var/lib/postgresql
Sudo apt-get install postgresql
7
Always Sunny