pg_restore

pg_restoreは、pg_dumpによって作成されたカスタム形式またはtar形式のアーカイブファイルからPostgreSQLデータベースをリストアするコマンドである。

pg_restoreの構文

pg_restore [connection-options] [options] [filename]
filename
リストアするアーカイブファイル(ディレクトリ書式アーカイブの場合はディレクトリ)の場所を指定する。

リストアするアーカイブファイルを指定しなかった場合、標準入力からアーカイブを読み取る。

pg_restoreのデータベース接続オプション

pg_restoreコマンドのconnection-optionsには、次のデータベース接続オプションを指定できる。

-h host
-host=host

PostgreSQLサーバのホスト名を指定する。ホスト名を指定しなかった場合は、環境変数PGHOSTに設定されたホスト名が使われる。

-p port
-port=port

PostgreSQLサーバのポート番号を指定する。

-U username
-username=username

データベース接続ユーザ名を指定する。

pg_restoreのオプション

pg_restoreコマンドのoptionsには、次のオプションを指定できる。

-c
--clean

再作成前にデータベースオブジェクトを整理(削除)する。

-d dbname
--dbname=dbname

指定したベータベースに接続して直接リストアする。

-F format
--fomrat=format

ファイル形式を指定する。

format 説明
c カスタム形式アーカイブを出力する。
この形式で出力した場合、リストアはpg_restoreコマンドを使用する。
custom
t tar形式のアーカイブを出力する。
この形式で出力した場合、リストアはpg_restoreコマンドを使用する。
tar
--if-exists

データベースオブジェクトを初期化するときに条件コマンドを使う。

-n schema
--schema=schema

指定したスキーマ内のオブジェクトのみをリストアする。

関連記事