[pgsql-jp: 41424] Re: ストリーミング・レプリケーションでデータの同期が行われなくなった

朝倉 佑貴 asakura.yuuki @ nttcom.co.jp
2013年 6月 17日 (月) 18:57:30 JST


朝倉と申します。

サーバ構成がよくわからないので、教えてください。
DBサーバは2台で構成され、1台がMaster、もう1台がSlaveで、
ストリーミングレプリケーションを組んでいた、
であっていますか?


> 更新系SQLは、両方のサーバへ発行される構造となっておりましたため、
この部分が分かりません。
ストリーミングレプリケーション + ホットスタンバイの構成だと、
そもそもSlave側は参照専用で、更新はMaster側にだけしか
発行できないのですが。。。


Master側に発行した更新が、Slave側に反映されなくなった、
ということなら、Slave側がpromoteされてしまった可能性を
考えます。

この線で調査するなら、
①それぞれのサーバで、「pg_controldata <PGDATA>」を実行して、
TimeLineIDを確認する
②Master側で、「SELECT * FROM pg_stat_replication」を実行して、
レプリケーションの状態を確認する
といった調査方法があると思います。







(2013/06/17 18:25), Keiji Yoshida wrote:
> 吉田と申します。
> お世話になります。
> 初めて投稿させて頂きます。
>
> 現在、Rails+PostgreSQL(9.1.4)で構築されたWEBアプリケーションを、約半年間運用しています。
>
> DBサーバは2台あり、ストリーミング・レプリケーションでデータの同期を行っています。
>
> 今までは問題なかったのですが、昨日急に、サーバ間でのデータの同期が行われなくなってしまいました(片方のサーバのみデータが更新される状態となってしまいました)。

> 更新系SQLは、両方のサーバへ発行される構造となっておりましたため、

> あるデータは1号機のみに存在し、またあるデータは2号機のみ存在するという、どちらのDBサーバも、独自のデータを抱える状態となってしまいました。
>
> どちらのDBサーバへ発行されたSQLも正常終了しているため、両方ともPostgreSQLのプロセスは正常に稼働していると認識しています。
>
> 現在、以下の不明点を抱えております。
>
> (1)なぜ同期できなくなったのか?
> (2)どのように同期処理を再開させるか?
> (3)どのようにデータを復旧させるか?
>
> 上記不明点の解消を試みておりますが、どのように調査を進めたら良いかが分からず、作業が止まっている状態です。
>
> 「こう調査すべき」、「このログを確認すべき」、「このようなことが原因として考えられるため、この点を確認すべき」など、もし考えられる点がございましたら、お知恵をお借りできませんでしょうか?
>
> お忙しいところお手数おかけ致しますが、何卒よろしくお願い申し上げます。
>
> 吉田
>
>



pgsql-jp メーリングリストの案内