[pgsql-jp: 34154] Re: PostgreSQL のアップグレードについて

seijun86 @ yahoo.co.jp seijun86 @ yahoo.co.jp
2004年 10月 26日 (火) 08:53:11 JST


Sato_Kenichi <satoak @ m14.alpha-net.ne.jp>さん:
野村です。さとうさん、どうも有り難うございました。
> はじめまして、さとう です。
> 7.2.xは使ったことないので、推測ですけど…
> 
> >(1)念のため、/usr/local/pgsqlのバックアップを取る
> >(2)postgresユーザーになり、cd /usr/local/src/postgresql-7.2.5として、
ソース等の
> >ディレクトリに移動する
> >(3)make uninstall を実行して、古いPostgreSQLを削除する。
> >(4)/usr/local/src上に、postgresql-4.2.6.tar.gzをコピーし、tarで解凍。
> >(5)古いpostmasterのデーモンを停止させる
> >(6)その後、configure, make, make installにて新バージョンをインストー
ルする。
> 
> (3)で削除してしまっては、(5)のデーモンが停止できない(正常にシャットダ
ウン
> できない)気がします。
> 
> >(1)念のため、/usr/local/pgsqlのバックアップを取る
> の後で、pg_ctl stop としてデーモンを停止させてから uninstall するんだ
と思
> います。
その通りですね。失礼しました。
> 
> >さて、この次の時点でinitdbを実行しなければならないのでしょうか。
> >思いつく方法としては、
> >(1)make install後、新しいpostmasterを起動させる。これは、make 
uninstall /usr/
> >local/pgsql/dataが削除されておらず、かつ、新しいバージョンでも/usr/
local/
> >pgsql/dataディレクトリ内のデータベースが使えると思うことが前提になっ
ています。
> >(2)一連の作業の前に、pg_dumpでデータベースのバックアップを取り、新バ
ージョンで
> >のインストールと、initdb, make checkが終わった後で、pg_dumpでリストア
する。
> >の二つです。
「pg_dumpでリストア」は「psqlでリストア」の間違いでした。
> 個人的には(2)の方がいいと思いますが、まず(1)を試してもいいかも。(^^;
> 
> >どちらを使ったらよいか、または、いずれも駄目なら、バージョンアップの
仕方につい
> >て正当な方法をご教示いただければたいへん幸いです。
> 
> 私の場合は、PGDATA=/data/pgsql として、データベースを別ディレクトリに
置い
> てあるので、以下の手順でお手軽にバージョンアップしています。
> ---
> (1) 念のため pg_dump でバックアップre
> (2) /usr/local/pgsql/bin/pg_ctl stop
> (3) mv /usr/local/pgsql /usr/local/pgsql.old
> (4) ./configure ; make ; make install
> (5) /usr/local/pgsql/bin/pg_ctl start
> ---
> uninstall しないで、リネームするのがお勧めです。(^^
> (問題が発生した時、元に戻せるので)
なるほど、そういう手もありましたか。
ご提示いただいた内容も含め、まずは実験機で試してみます。
どうも有り難うございました。
> # PGDATA を合わせれば、/usr/local/pgsql/data を移動させちゃって大丈夫
な
> # んですかね…?
initdbを行ったときに、データディレクトリを/home/postgresにでも作成してく
れればに気軽にバージョンアップを行えるのですが・・・。


__________________________________
for your loved one
http://pr.mail.yahoo.co.jp/pinkribbon/




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