Postgresの不完全な起動パケットエラー


13

Ubuntu 14.04にPostgres 9.3をインストールしようとしていますが、起動時に厄介なエラーが発生します。ここに私が見ているものがあります:

$ sudo service postgresql restart
* Restarting PostgreSQL 9.3 database server
* Error: could not exec /usr/lib/postgresql/9.3/bin/pg_ctl /usr/lib/postgresql/9.3/bin/pg_ctl start -D /var/lib/postgresql/9.3/main -l /var/log/postgresql/postgresql-9.3-main.log -s -o  -c config_file="/etc/postgresql/9.3/main/postgresql.conf" : [fail]

そこで、この出力でログファイルをチェックしました。

 2015-01-05 21:50:05 EST LOG:  database system was shut down at 2015-01-05 21:50:03 EST
 2015-01-05 21:50:05 EST LOG:  database system is ready to accept connections
 2015-01-05 21:50:05 EST LOG:  autovacuum launcher started
 2015-01-05 21:50:06 EST LOG:  incomplete startup packet
 2015-01-05 21:51:22 EST ERROR:  syntax error at or near "exit" at character 1
 2015-01-05 21:51:22 EST STATEMENT:  exit;

「不完全な起動パケット」が原因のようですが、何が起こっているのかについての情報をそこに見つけるのに苦労しているので、私は尋ねると思いました。前もって感謝します。

回答:


15

この質問には3つの異なる項目があります。

  • サーバーの起動時に発生する不完全な起動パケットは重要ではないため、無視してかまいません。詳細については、必要な不完全な起動パケットのヘルプ(pgsql-generalメーリングリスト)を参照してください。

  • 文字1の「終了」またはその近くの構文エラーは、クライアントがexitSQLステートメントであるかのように発行したことを意味します。

  • EXECできなかったエラーを発行service postgresql restart深刻なインストールの問題のように見えるが、それは、ログエントリによって否定だdatabase system is ready to accept connectionsサーバがうまく起動しないことを意味します。


「深刻なインストールの問題のように見える」というあなたの応答は、Postgresを完全に削除して再インストールする方法について、さらに調査することを促しました。私が見つかりました。この記事を再インストールする前のPostgresのすべての痕跡を除去するのに有用であり、とてもうまくいきました。
アンドリューニエセン

8
「不完全な起動パケット」の考えられる原因の1つは、postgresqlポート5432にTCP接続が行われ、すぐに閉じられた場合です。これは、監視プログラムがポートをチェックするように構成されているが、SQLコマンドを実行しないように構成されている場合に発生する可能性があります。
トムH

@TomHをうまく見つけました。データベースが接続を受け入れていることを確認する他の方法はありますか?MySQLはmysqladmin --wait=30 ping
Yarek T

1
@YarekT:pg_isready -PostgreSQLサーバーの接続ステータスを確認する
ダニエルヴェリテ

-1

iptablesがポート5432にパッケージをドロップしている可能性があります。iptables
に次のルールを追加することを検討してください。

# sudo iptables -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.