ダンプとリストア

    ダンプ

    ダンプにはそれ用のコマンドpg_dumpがありこれでダンプファイルの作成ができます。これの接続時のオプションなどはpsqlと同じです。

    以下でoutput.sqlにダンプできます。

    PGPASSWORD=password pg_dump \
      -h host \
      -p port \
      -U username \
      foo_database > output.sql
    

    接続情報にはpostgres://スキーマを使うこともできます。

    pg_dump postgres://.../foo_database > output.sql
    

    リストア

    ダンプされたファイルはそのままpsqlで扱える形なので、シェルのリダイレクションで取り込むことができます。databaseがない場合は先に作っておきます。

    psql postgres://... -c 'create database foo_database'
    psql postgres://.../foo_database < output.sql