--------(--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2011-11-07(Mon)

postgreSQL9.1で非同期レプリケーションを構築する(3)

pgpoolを構築してみる。

(1). pgpoolのダウンロード、インストール

$ wget http://pgfoundry.org/frs/download.php/3164/pgpool-II-3.0.5.tar.gz
$ tar xzvf pgpool-II-3.0.5.tar.gz
$ cd pgpool-II-3.0.5
$ ./configure --prefix=/usr/local/pgpool --with-pgsql=/usr/local/pgsql
$ make
$ sudo make install


(2). ~/.bashrcの設定

$ vim ~/.bashrc
# 以下を追加する
PGPOOL_HOME=/usr/local/pgpool
PGPOOLENGINE=$PGPOOL_HOME/bin
PGPOOLDAEMON=$PGPOOLENGINE/pgpool
PGPOOLCONF=$PGPOOL_HOME/etc/pgpool.conf
PGPOOLLOG=$PGPOOL_HOME/log/pgpool.log
export PATH="$PATH":$PGPOOLENGIN
$ source ~/.bashrc


(3). 必要ライブラリーのインストール

-- pgpool-recovery
$ cd pgpool-II-3.0.5/sql/pgpool-recovery
$ make
$ sudo make install

-- pgpool-regclass

$ cd pgpool-II-3.0.5/sql/pgpool-walrecrunning
$ make
するとこんなエラーが。。。。
$ pgpool-regclass.c:55:1: error: static declaration of ‘get_namespace_oid’ follows non-static declaration
$ /usr/local/pgsql/include/server/catalog/namespace.h:99:12: note: previous declaration of ‘get_namespace_oid’ was here
$ make: *** [pgpool-regclass.o] Error 1


これはバグらしい。。
ここに対処方法が書いてあるのでそのまま適用する。()

diffをのせておく。

53a54,55
> /*
> #if !defined(PG_VERSION_NUM) || (PG_VERSION_NUM < 90100)
54a57
> #endif
55a59
> */
175a180
> #if !defined(PG_VERSION_NUM) || (PG_VERSION_NUM < 90100)
197a203
> #endif

で再度makeする。

$ make
$ sudo make install

-- pgpool-walrecrunning

$ cd ../pgpool-walrecrunning/
$ make
$ sudo make install


(4). ライブラリーをMaster / Slaveサーバーへコピーする。

$ scp /usr/local/pgsql/lib/pgpool-recovery.so 192.168.11.200 :/usr/local/pgsql/lib
$ scp /usr/local/pgsql/lib/pgpool-regclass.so 192.168.11.200 :/usr/local/pgsql/lib
$ scp /usr/local/pgsql/lib/pgpool-walrecrunning.so 192.168.11.200 :/usr/local/pgsql/lib

上記3ライブラリーを各Slaveにもコピーすること。

(5). 各SQLファイルを各サーバーへ入れる。

psql -h 192.168.11.200 -f /mnt/download/pgpool-II-3.0.5/sql/pgpool-recovery/pgpool-recovery.sql template1
psql -h 192.168.11.200 -f /mnt/download/pgpool-II-3.0.5/sql/pgpool-recovery/pgpool-recovery.sql postgres
psql -h 192.168.11.200 -f /mnt/download/pgpool-II-3.0.5/sql/pgpool-regclass/pgpool-regclass.sql template1
psql -h 192.168.11.200 -f /mnt/download/pgpool-II-3.0.5/sql/pgpool-regclass/pgpool-regclass.sql postgres
psql -h 192.168.11.200 -f /mnt/download/pgpool-II-3.0.5/sql/pgpool-walrecrunning/pgpool-walrecrunning.sql template1
psql -h 192.168.11.200 -f /mnt/download/pgpool-II-3.0.5/sql/pgpool-walrecrunning/pgpool-walrecrunning.sql postgres

上記3ライブラリーを各Slaveにも適用すること。

疲れた。。つづくで。。。
関連記事
スポンサーサイト

コメントの投稿

管理者にだけ表示を許可する

コメント

プロフィール

kumagonjp2

Author:kumagonjp2
Python,Django,R,Mongo,MySQL,Struts,Spring,データマイニングなどサーバー関係のメモを残していきます。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
雪が3Dで降るブログパーツ ver2

マウスで見る方向変えられます

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。