Ubuntu 13.04とPostgreSQL 9.2を実行している2つのクラウドサーバーがあります。
私は主に このブログの投稿 を使用して、設定を支援しました。ただし、スレーブに初期データベースダンプを行うには、 この他のブログ投稿 で使用されているpg_start_backup/pg_stop_backup
戦略を使用しています。私はdocsとpostgres wikiも読みました。解決できたいくつかの問題に遭遇しましたが、この悲惨な「データベースの起動中」の失敗を乗り越えることはできません。
次の状況かどうかはわかりません。
cp: cannot stat /var/lib/postgresql/9.2/archive/00000001000000000000003A':
No such file or directory
consistent recover state reached
の後は正常であるか、問題の最初の兆候です。私がthe database is starting up
とincomplete startup packet
で行った検索は、何かが空にTCPパケットをスレーブに送信していることを示しています。スレーブについて知っているのは、マスターなので、なぜそれが空のパケットを送信しているのかわかりません...
誰かがこれを使って作業し、何がうまくいかないのか考えていますか?
スレーブのpostgresログは次のようになります。
2013-08-26 13:01:38 CDT LOG: entering standby mode
2013-08-26 13:01:38 CDT LOG: restored log file "000000010000000000000039" from archive
2013-08-26 13:01:38 CDT LOG: incomplete startup packet
2013-08-26 13:01:39 CDT LOG: redo starts at 0/39000020
2013-08-26 13:01:39 CDT LOG: consistent recovery state reached at 0/390000E0
cp: cannot stat '/var/lib/postgresql/9.2/archive/00000001000000000000003A': No such file or directory
2013-08-26 13:01:39 CDT LOG: streaming replication successfully connected to primary
2013-08-26 13:01:39 CDT FATAL: the database system is starting up
2013-08-26 13:01:39 CDT FATAL: the database system is starting up
2013-08-26 13:01:40 CDT FATAL: the database system is starting up
2013-08-26 13:01:40 CDT FATAL: the database system is starting up
2013-08-26 13:01:41 CDT FATAL: the database system is starting up
2013-08-26 13:01:42 CDT FATAL: the database system is starting up
2013-08-26 13:01:42 CDT FATAL: the database system is starting up
2013-08-26 13:01:43 CDT FATAL: the database system is starting up
2013-08-26 13:01:43 CDT FATAL: the database system is starting up
2013-08-26 13:01:44 CDT FATAL: the database system is starting up
2013-08-26 13:01:44 CDT FATAL: the database system is starting up
2013-08-26 13:01:44 CDT LOG: incomplete startup packet
2013-08-26 13:03:27 CDT FATAL: the database system is starting up
2013-08-26 13:03:27 CDT FATAL: the database system is starting up
2013-08-26 13:03:30 CDT FATAL: the database system is starting up
2013-08-26 13:03:30 CDT FATAL: the database system is starting up
ありがとう!ブラッド
pg_stop_backup
以降の最後のWALアーカイブをコピーできません。この方法を使用する場合は、WALアーカイブをセットアップするか、WALを手動でコピーする必要があります。
9.2以降では、pg_basebackup --xlog-method=stream
を使用して1回限りのコピーを行う方がはるかに簡単です。これにより、トランザクションログがレプリケーションプロトコルを介してコピーされ、ベースバックアップ自体がコピーされ、pg_start_backup
およびpg_stop_backup
が自動的に処理されます。
the pg_basebackup
manual を参照してください。
タイトルに記載されている「不完全な起動パケット」エラーはおそらく無関係であり、sslmode=prefer
を持つクライアントから非SSL対応サーバーへのSSL接続の試行が原因で発生します。