6

postgresql 9.0でストリーミング・レプリケーションを実行しようとしています。 http://brandonkonkle.com/blog/2010/oct/20/postgres-9-streaming-replication-and-django-balanc/ホット・ストリーミング・レプリケーションの設定中にpostgresql 9.0アーカイブからのエラーが発生しました

postgresqlでアーカイブコマンドを実行しようとすると、私は無限に待つように警告されます。私は、次の順序でコマンドを実行しています:私は次の出力を得るために、この

SELECT pg_start_backup('base_backup'); 

cd /var/lib/postgresql/9.0/ 
sudo tar -cjf ~/postgres-data.tar.bz2 main 

SELECT pg_stop_backup(); 

NOTICE: pg_stop_backup cleanup done, waiting for required WAL segments to be archived 
WARNING: pg_stop_backup still waiting for all required WAL segments to be archived (60 seconds elapsed) 
HINT: Check that your archive_command is executing properly. pg_stop_backup can be cancelled safely, but the database backup will not be usable without all the WAL segments. 
WARNING: pg_stop_backup still waiting for all required WAL segments to be archived (120 seconds elapsed) 
HINT: Check that your archive_command is executing properly. pg_stop_backup can be cancelled safely, but the database backup will not be usable without all the WAL segments. 

は、これがさらに継続し続けると警告は決して終わりません。誰かがこの問題に直面した場合は、私にお知らせください。

答えて

1

指定したリンクに記載されているようにarchive_commandを設定しましたか?実際にxlogファイルを安全な場所に正しくコピーしていますか?サーバーからの出力は、それがないことを示し、バックログが内部に蓄積されていることを示します。pg_xlog

レプリカでマスターとして使用するには、実際にサーバーでアーカイブを有効にする必要はありません。あなたはですwal_levelhot_standbyに設定する必要があります。その設定を使用すると、レプリカはマスターに接続して、従来のxlogアーカイブプロセスとは独立してxlogレコードをストリーミングできます。ですので、archive_mode=offに設定してみてください。

編集:さらに詳しくリンクを読むには、意味のある基本バックアップを作成するためにarchive_modeを設定する必要があります。したがって、アーカイブ・コマンドを修正して、基本バックアップを適切に実行できるようにするか、サーバーが停止している間に基本バックアップを取るようにしてください。

1

新しいSRをpg 9で使用したいだけであれば、アーカイブを混乱させないでください。私は最初に問題が起きていた。私は、スレーブにマスターを複製するアーカイブなしのベアボーンセットアップチュートリアルを書いた:http://eggie5.com/15-setting-up-pg9-streaming-replication

1

WALアーカイブファイルが実行されているフォルダのアクセス許可を確認してください。これは、データベースを所有しているユーザーが、そのフォルダにWALファイルを書き込めない理由がそのフォルダに対する書き込み権限を持っていないという問題かもしれません。 chmodを使用して、そのフォルダのアクセス許可を変更してください。これにより問題が解決する可能性があります。

よろしくお願いいたします。

関連する問題