ページ内コンテンツ
DBのアップデートは、とても難しい。
多分、重要なデータを管理するようなソフトウェアを作っている人達には常識なのですが、アップデートってとても困難なんですよね。特にやっかいなのは、旧システムで動いていたデータを、新システムに移行するとき。旧→新システム用にデータを変換しないといけないのですよ。GentooにおけるPostgreSQLの場合はどうやってやるのか、と。まとめておきまーす。
データベース内のデータをバックアップする
まずは、pg_dumpallコマンド使用して、SQL形式でダンプいたします。
# cd /var/lib/postgresql/8.4/data # vi pg_hba.conf local all all trust
この行を追加して、
# /etc/init.d/postgresql-8.4 restart
それから、pg_dumpallコマンドを使用して、SQL形式ダンプを作ります。
# su postgres postgres@localhost ~ $pg_dumpall > pgsql.sql
アクティブなPostgreSQLを切り替える
まず、動いているPostgreSQLを止め、eselectコマンドで切り替えます。
# /etc/init.d/postgresql-8.4 stop # eselect postgresql list Available postgresql installations 8.4 <-* <-S base-8.4.5 server-8.4.5 9.0 base-9.0.3 server-9.0.3
こんな感じね。これを切り替えましょー。
# eselect postgresql set-all 9.0 # eselect postgresql list Available postgresql installations 8.4 base-8.4.5 server-8.4.5 9.0 <-* <-S base-9.0.3 server-9.0.3 # eselect postgresql update
はい。これで、アクティブなPostgreSQLのバージョンが、8.4から9.0に切り替わりました。次は新しいPostgreSQLにデータを突っ込みます。
新しいPostgreSQLにデータを突っ込む
まずはデータベースの初期化。そして起動後psqlでやす。
# emerge --config =dev-db/postgresql-server-9.0.3 # /etc/init.d/postgresql-9.0 # psql -f pgsql.sql template1
PostgreSQLをコンフィギュレーションしておく
とりあえず、アクセス権限だけは必要かなーと。
# cd /var/lib/postgresql/9.0/data # vi pg_hba.conf
アクセス権限は適宜に設定してやってね
ぺージ情報 | |
---|---|
ぺージ名 : | Gentoo Linuxな生活/PostgreSQLのアップデートで悩む |
ページ別名 : | 未設定 |
ページ作成 : | maruo |
閲覧可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |
編集可 | |
グループ : | なし |
ユーザー : | なし |
Counter: 3917,
today: 2,
yesterday: 1
初版日時: 2011-03-27 (日) 23:16:11
最終更新: 2011-03-27 (日) 23:20:07 (JST) (4779d) by maruo