最新版は、http://usogres.good-day.net/install.php3 から取得可能です。 他の言語に翻訳して下さる方がいらっしゃいましたら、 hosokawa@dear-jpn.com まで連絡下さい。 導入方法 まず、ここでは一台のマシンに二つのPostgreSQLを立ち上げて二重化させてみます。 設定ファイルを書き換えれば、そのまま2台のマシンで二重化を実行可能です。 まずは、動作確認のための導入をしてみましょう。 必要なもの 稼働可能な状態になっている PostgreSQL。 うそぐれすのソースコード。 二重化を行なうデータベース一式。 開発ツール一式(c++コンパイラが必須です) 導入手順 c++などの開発ツールがそろっていることを確認してください。 PostgreSQLを稼働可能な状態にしておきます。PostgreSQLの導入に関しては こちらのページを参照されるのがよろしいかと。 うそぐれすのソースコードをとってきます。安定版はここ からダウンロード可能です。 とってきたソースコードを以下の要領で適当な場所に展開します。 tar xzf usogres-0.0.x.tar.gz Slackware をお使いの方は、bz2 を展開するときに、 tar xyf を使う必要があります。 展開してできあがったディレクトリにcdします。 おまじないのごとく、 ./configure make su -c "make install" を実行してください。 これで、実行ファイルが生成、導入されました。 設定ファイルを usogres を実行するユーザーのホームディレクトリに作成します。 設定ファイルの名前は、.usogresrc。 サンプルのファイルを示します。 host = "127.0.0.1" port = 5432 hostorg = "127.0.0.1" portorg = 5434 hostcopy = "127.0.0.1" portcopy = 5436 設定する内容は、以下の通り。 host : うそぐれすが待機するホストアドレス port : うそぐれすが待機するポート番号 hostorg : メインのデータベースが起動しているホストアドレス portorg : メインのデータベースが起動しているポート番号 hostcopy : サブのデータベースが起動しているホストアドレス portcopy : サブのデータベースが起動しているポート番号 データベースの強制同期を行ないます。 ここで示す手順は、サブのデータベースの内容を完全に破壊します。必ずバックアップをとってから作業を行なってください。 メインのデータベースを停止します。 もし立ち上がっているようならサブのデータベースも停止します。 メインのデータベースのデータディレクトリを /usr/local/pgsql/data 、サブのデータベースのデータディレクトリを /usr/local/pgsql/data2 としま す。 /usr/local/pgsql/data2 が存在していなければ mkdir /usr/local/pgsql/data2 として作成します。 /usr/local/pgsql/data へ移動して以下のコマンドを実行し、強制的にメインとサブを同じ内容にします。 tar cf - . | (cd ../data2; tar xf -) GNU のtarを使用しているなら、もう少し簡単に tar cf - . | tar xf - -C ../data2 メインのpostmasterを起動します。ここで示した設定だと、5434 のポートで待機しますので、 su pgsql -c "/usr/local/pgsql/bin/postmaster -S -i -p 5434 -D /usr/local/pgsql/data" サブのpostmasterを起動します。ここで示した設定だと、5436 のポートで待機しますので、 su pgsql -c "/usr/local/pgsql/bin/postmaster -S -i -p 5436 -D /usr/local/pgsql/data2" うそぐれすを起動します。特にむずかしいことはありません。 /usr/local/bin/usogres 以上の通り、単にオプション無しで起動すればけっこうです。 クライアント向けの設定を行ないます。環境変数を二つ設定します。 PGHOST : うそぐれすが待機するホストアドレスを設定します。 PGPORT : うそぐれすが待機するポート番号を設定します。 bashの例とcshの例を示します。 bash export PGHOST=localhost export PGPORT=5432 csh setenv PGHOST localhost setenv PGPORT 5432 以上で、二つのデータベースとうそぐれすが起動しました。 psqlコマンド等を使用していろいろと試してみてください。