最近、いつ泣きましたか?

いつもお世話になっております。

現在、2台のPCにpostgreSQL8.2.5をインストールしpgpool-II-2.0.1を入れてレプリケーション機能を試しているのですが,一旦、セカンダリサーバーを止めて、マスタサーバーで処理をし、セカンダリサーバーを起動させてみて、DBを確認しましたら、両サーバーのDBは不一致でした。実際に障害が発生し、データーに不一致が生じた場合、データを一致させるにはどうすればよろしいのでしょうか。

御指導をお願い致します。

A 回答 (1件)

pgpoolはSQLレベルのレプリケーションを行うだけなので、切り離した後の復帰まではサポートしていないと思います。



障害が発生した場合は、障害機を切り離す縮退運転として切り離した機は復帰させないようにします。障害を解消した場合は、正常機も一旦止めて、両機のデータを完全同期させる必要があります。(データ部分をrsyncする等でよいでしょう)

というのも、pgpoolの場合、目的としているのが「不意の障害で運用を止めないこと」ですので、復帰のときに止めなくて済むようにはなっていませんので。もしそのようにしたいのであれば、分散クラスタ(PGCluster)や非同期レプリケーション(Slony-I)とかを検討すべきでしょう。
    • good
    • 0
この回答へのお礼

UGsanma 様
ご指導誠に有難う御座います。

pgpool-II自体の目的が分かりました。傷害が起こった際は、一度全てのノードを止めて、rsyncコマンドでデータを統一させて、再起動すればいいのですね。

本当に勉強になりました。
また、お力をお借りするかと思いますが、何卒、宜しくお願い致します。

お礼日時:2007/12/11 09:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す