Linux/PostgreSQL+pgpoolアップデート

PostgreSQL+pgpoolアップデート

dokuwiki.fl8.jp転載済

流れ

  1. pgpoolストップ
  2. postgresアップデート
  3. pgpoolアップデート

PostgreSQLアップデート

・今のデータをバックアップ取っておく

# mv /var/lib/pgsql/data /var/lib/pgsql/data.101013

・メジャーバージョンアップの場合フォルダコピーじゃ、エラーになるので dumpする

# su - postgres
$ cd /var/lib/pgsql
$ mkdir work
$ pg_dumpall --globals-only > work/globals.sql
$ pg_dump tmp work/tmp
$ pg_dump tmp_card > work/tmp_card
$ exit

・古いpostgresqlを削除

# yum remove postgresql*

・新しいpotgresqlをインストール

# yum install postgresql84 postgresql84-contrib postgresql84-devel postgresql84-libs postgresql84-server
# vi /etc/init.d/postgresql
257行目 --encoding=EUC_JP --no-localeを加える
$SU -l postgres -c "$PGENGINE/initdb --pgdata='$PGDATA'
--encoding=EUC_JP --no-locale --auth='ident'" >> "$P        GLOG" 2>&1 <
/dev/null

・データを戻す

# su - postgres
$ psql < work/global.sql
$ createdb tmp -E EUC_JP
$ createdb tmp_card -E EUC_JP
$ psql tmp < work/tmp
$ psql tmp_card < work/tmp_card
$ exit
# cp /var/lib/pgsql/data.101013/pg_hba.conf  /var/lib/pgsql/data/pg_hba.conf
# vi  /var/lib/pgsql/data/postgresql.conf
下記を加える
listen_addresses ='*'

# /etc/init.d/postgres start

pgpool update

http://ftp.yz.yamagata-u.ac.jp/pub/dbms/postgresql/projects/pgFoundry/pgpool/ この辺からソースを落としてくる。

・pgpool止めておく

# pgpool stop

・コンパイル、インストール

# tar zxvf pgpool-II-3.0.tar.gz
# cd pgpool-II-3.0
# ./configure
# make
# make install

添付のpgpool.confを環境に合わせて修正

# /usr/local/etc/pgpool.conf

に置く

pgpool起動

# /etc/rc.d/rc.local