目次
Docker の Postgres にダンプファイルからリストアする手順
Docker で Posgres を起動する
% docker run -d -p 5432:5432 postgres:9.4.1 postgres
コマンドで Postgres を起動する
オプションの説明は以下
- -d :でデーモン化する
- -p :ポート(フォワード)を指定
もし、ダンプファイルがホスト PC にある場合は、-v(volums)で接続する
% docker run -it -d -v $(pwd):/tmp -p 5432:5432 postgres postgres
- -v: pwd の場所が docker 内部の/tmp ディレクトと結合する。
Restore する
pg_restore
コマンドを使用してリストアする
- まずは、Docker にログイン
% docker exec -it {コンテナID} /bin/bash
※コンテナ ID は docker ps
で確認する
- Docker 内部でリストアコマンドを実行する
$ pg_restore -d {DB名} -U postgres {ダンプファイルパス}
//例
$ pg_restore -d 'Price' -U postgres /tmp/price.pgdump
おまけ:dump
pg_dump
でダンプファイルを生成する方法
$ pg_dump -Fc -h {IP} -p {Port} -U {ユーザ名} -d {DB名} > /path/db_dmp.backup
//例
$ pg_dump -Fc -h 127.0.0.1 -p 5433 -U postgres -d sample > /var/lib/pgsql/9.4/data/sample_dmp.backup