« 06月06日の行動 | メイン | NONDRINKING »

2007年06月06日

[技術] PostgreSQLのホットバックアップ(backup)

【備忘録】 PostgreSQL, backup, pg_dump

% pg_dump -a -D -O dbname > dbname.out

-a 定義はダンプせず、データだけをダンプ
-D INSERT文でダンプ
-O onwershipを引き継がない

項目(カラム)を追加したためにテーブル定義を変更が発生したときに
定義ファイルからデータベースを作り直した上で、今までのデータを
新しいにデータベースに格納するには、上記のように pg_dumpで
データをINSERT文形式で引き抜いておいて、再定義した空のデータベースに
以下のようにして、再投入する。

% createdb newdbname -Eutf8
% psql newdbname -f 定義文ファイル
% psql newdbname -f dbname.out

投稿者 nekobara : 2007年06月06日 16:32


コメント