pg_dump [ dbname ] pg_dump [ -h host ] [ -p port ] [ -t table ] [ -a ] [ -c ] [ -d ] [ -D ] [ -i ] [ -n ] [ -N ] [ -o ] [ -s ] [ -u ] [ -v ] [ -x ] [ dbname ]
pg_dump は、以下のコマンドライン 引数を受け付けます、
抽出されるデータベース名を指定します。 デフォルトの dbname は、 環境変数 USER の値です。
データだけを抽出し、スキーマ (定義)は除きます。
作成前に、スキーマを排除します。
データを正しい挿入文として書き出します。
データを属性名付きの挿入文として 書き出します。
pg_dump とデータベースサーバと の間のバージョンの不整合を無視します。 pg_dump はシステムカタログに関 して多くのことを知らなければなりませんので、あるバージョン の pg_dump は対応するバージョン のデータベースサーバとのみうまく動作するように作成されてい ます。 このバージョンチェックを無視する必要がある場合、このオプ ションを使用してください。(また、これにより pg_dump が失敗したとしても、知ら なかったとはいわないで下さい。)
まったく必要が無い場合は、識別子の前後に付ける二重引用符 の出力を行いません。 これにより、もし予約語が識別子として使われている場合、 書き出されたデータを読み込む場合に問題を引き起こすことが あります。 これは v6.4 以前の pg_dump のデフォルトの動作でした。
識別子の前後に二重引用符を付記します。 これが、デフォルトです。
すべてのテーブルのオブジェクトID (OIDs) を書き出します。
データを含まない、スキーマ (定義) だけを書き出します。
table として 指定されたデータだけを書き出します。
パスワード認証を使います。ユーザ名とパスワードを 尋ねられます。
冗長メッセージモードを指定します。
アクセス制御リスト (grant/revoke コマンド) と テーブルの所有権に関する情報の書き出しを行いません。
pg_dump は、またコマンドライン引数 として以下の接続パラメータも受け付けます。
postmaster が動作しているホスト名 を指定します。デフォルトは、IP接続ではなくローカル Unix ドメインソケットを使用します。
postmaster が接続を監視している インターネット TCP/IP ポート、あるいは ローカル Unix ドメインソケットファイル拡張子を指定します。 ポート番号は 5432 か、あるいは (もし設定されている場合は) PGPORT 環境変数の値をデフォルトとします。
パスワード認証を使用します。 username と password を 尋ねられます。
pg_dump は、ファイルを作成するか、 あるいは stdout に書き出します。
pg_dump は、指定されたホストと ポート上にある postmaster に 接続することができませんでした。このメッセージが表示された 場合、postmaster が正しいホスト上 で、指定した正しいポートで動作していることを確認してください。 もし認証システムを使用しているサイトの場合は、必要な認証資格 を持っているか確認してください
リレーション pg_shadow に有効な登録が されておらず、そして Postgres に アクセスすることを許されていません。 Postgres 管理者に連絡を取って ください。
データベースを読む権限がありません。 Postgres サイト管理者に連絡を 取ってください。
Note: pg_dump は、内部的には SELECT 文を実行します。もし、 pg_dump の使用時に問題がある場合 は、例えば psql を使用して、 使用しているデータベースから情報を選択することができることを 確認してください。
pg_dump は、 Postgres データベースを、 問い合わせコマンドを含めてスクリプトファイルの中へ 書き出すユーティリティです。 スクリプトファイルはテキスト形式で、データベースを再構築する ために使うことができます。そして、それは他のホストや、別の アーキテクチャ上にも再構築することもできます。 pg_dump は、ユーザが定義したすべて のデータ型、関数、テーブル、インデックス、集約関数と演算子 を再度生成するために必要な問い合わせを生成します。 加えて、すべてのデータはテキスト書式で書き出されるため、 編集の為のツールの中にインポートするのと同じぐらい、 簡単に再びコピーされることができるようになっています。
pg_dump は、 ある Postgres から、別のインストレーションにデータを移動する際にデータベース の内容を書き出せるので便利です。 pg_dump を使用した後、 出力されたスクリプトファイルに警告があるかどうか、特に、以下 の制限事項に書かれていることを考慮して、調査を行なって下さい。
pg_dump には、幾つかの制限事項が あります。 これらの制限事項は、おおむねシステムカタログからある特定 のメタ情報を抽出することの困難さによるものです。
pg_dump は、部分インデックス を理解しません。これも、部分インデックスの述語が計画と して保存されているという上記と同じような理由のためです。
pg_dump は、ラージオブジェクトを 扱いません。 ラージオブジェクトは無視されるので、それらは手作業で対処 しなければなりません。
データのみの書き出しを行なう場合、pg_dump は、データ挿入前にユーザテーブルのトリガを無効にする問い合わせを発行 し、データ挿入完了時に有効に戻す問い合わせを発行します。 リストアが途中で中断した場合、システムカタログが間違った状態のままに なることがあります。