1. 背景

バックアップとリストアをしたくて調べた。

2. バックアップ

標準出力をパイプしてファイルに書く。

pg_dumpall -h ホスト名 -U ユーザ名 > ファイル名

主要なオプションは以下。

[pg_dumpの主なオプション]
-a データのみをダンプ
-b ラージオブジェクトもダンプする。(注: デフォルトではダンプされません)
-d INSERTコマンドにてダンプ(通常はCOPYコマンド)
-D カラム名を含めたINSERTコマンドにてダンプ
-s テーブルのみダンプ
-t 特定のテーブルのみダンプ
-F アウトプットファイルの形式を指定(cがカスタム、tがtar、pがテキスト)

3. リストア

主要なオプションは以下。

[pg_restoreの主なオプション]
-c データベースの作成前にテーブルなどをドロップする。
-F バックアップファイルの形式を指定(cがカスタム、tがtar、pがテキスト)
-d データベース名を指定