pg_dumpall

Name

pg_dumpall  --  全ての Postgres データベースを スクリプトファイルに抽出する

Synopsis

pg_dumpall
pg_dumpall [ -h host ] [ -p port ] [ -a ] [ -d ] [ -D ] [ -O ] [ -s ] [ -u ] [ -v ] [ -x ]
  

入力

pg_dumpall は、以下の コマンドライン引数を受け付けます。

-a

データだけを抽出し、スキーマ (定義)は省かれます。

-d

データを正しい挿入文として書き出します。

-D

データを属性名付きの挿入文として 書き出します。

-n

まったく必要が無い場合は、識別子の前後に付ける二重引用符 の出力を行いません。 これにより、もし予約語が識別子として使われている場合、 書き出されたデータを読み込む場合に問題を引き起こすことが あります。

-o

すべてのテーブルのオブジェクトID (OIDs) を書き出します。

-s

データを含まない、スキーマ (定義) だけを書き出します。

-u

パスワード認証を使います。ユーザ名とパスワードを 尋ねられます。

-v

冗長メッセージモードを指定します。

-x

アクセス制御リスト ( grant/revoke コマンド) と テーブルの所有権に関する情報の書き出しを行いません。

pg_dumpall は、またコマンドライン引数 として以下の接続パラメータも受け付けます。

-h host

postmaster が動作しているホスト名 を指定します。デフォルトは、IP接続ではなくローカル Unix ドメインソケットを使用します。

-p port

postmaster が接続を監視している インターネット TCP/IP ポート、あるいは ローカル Unix ドメインソケットファイル拡張子を指定します。 ポート番号は 5432 か、あるいは (もし設定されている場合は) PGPORT 環境変数の値をデフォルトとします。

-u

パスワード認証を使用します。 usernamepassword を 尋ねられます。

出力

pg_dumpall は、ファイルを作成 するか、stdout に書き出します。

Connection to database 'template1' failed. connectDB() failed: Is the postmaster running and accepting connections at 'UNIX Socket' on port 'port'?

pg_dumpall は、指定されたホストと ポート上にある postmaster に 接続することができませんでした。このメッセージが表示された 場合、postmaster が正しいホスト上 で、指定した正しいポートで動作していることを確認してください。 もし認証システムを使用しているサイトの場合は、必要な認証資格 を持っているか確認してください

Connection to database 'dbname' failed. FATAL 1: SetUserId: user 'username' is not in 'pg_shadow'

リレーション pg_shadow に有効な登録が されていないため、Postgres に アクセスすることを許されていません。 Postgres 管理者に連絡を取って ください。

dumpSequence(table): SELECT failed

データベースを読む権限がありません。 Postgres サイト管理者に連絡を 取ってください。

Note: pg_dumpall は、内部的には SELECT 文を実行します。もし、 pg_dumpall 使用時に問題がある場合 は、例えば、 psql を使用して、 データベースから情報を選択することができることを確認して ください。

説明

pg_dumpall は、すべての Postgres データベースを、 ひとつのファイルの中へ書き出すユーティリティです。 また、すべてのデータベースに対して共通なテーブルである pg_shadow も、書き出します。 pg_dumpall は、読み込む前に、 書き出されたそれぞれのデータベースを自動的に作成する コマンドをそのファイルの中に含めます。

pg_dumpall は、 -f-t、そして dbname を除いた すべての pg_dump のオプションを 指定できます。

オプションについてのより詳細は、 pg_dump を参照して下さい。

使用法

すべてのデータベースを書き出す場合、以下のようにします。

% pg_dumpall > db.out
   

Tip: pg_dumpall には、ほとんどの pg_dump オプションが使用できます。

上記で書き出したデータベースを読み込む場合、 以下のようにします。

% psql -e template1 < db.out
   

Tip: 読み込みの際、ほとんどの psql オプションが使用できます。