PostgreSQLでDBのバックアップとリストアを行う!(pg_dump/psql)

PostgreSQLで、pg_dumpコマンドで、DBのバックアップを取得します。

DBのバックアップを取得する!(pg_dump)

pg_dumpコマンドで、テキスト形式でDBのバックアップを取得します。以下、「inventory」というDBのバックアップを取得します。

$ pg_dump -U postgres --clean --if-exists -f ./backups/inventory.sql inventory
$ ls -l ./backups/inventory.sql 
-rw-r--r--. 1 postgres postgres 2264 May 13 13:07 ./backups/inventory.sql

DBのリストアを行う!(psql)

リストアは、DBを指定して行います。「--clean」、「--if-exists 」オプションを使用しないでバックアップを取得した場合は、テーブル等のオブジェクトを削除してからリストアします。

$ psql inventory < ./backups/inventory.sql
SET
SET
SET
SET
SET
 set_config 
------------
 
(1 row)

SET
SET
SET
SET
ALTER TABLE
ALTER TABLE
ALTER TABLE
DROP TABLE
SET
SET
CREATE TABLE
ALTER TABLE
COPY 1
ALTER TABLE
ALTER TABLE
ALTER TABLE

おわりに

PostgreSQLのDBのバックアップとリストアは、pg_dumpコマンドを使用して行うことができます。

参考情報

関連記事

参考書籍(Amazon)