PostgreSQLのバックアップとリストア

こんにちは、にわこまです。

今回は、PostgreSQLのバックアップとリストアについて書いていきたいと思います。

何かご指摘があればご連絡ください。

環境
OS: Windows 10
PostgreSQL Version : 10.5

 

 

スポンサードサーチ


PostgreSQLのバックアップ

postgresqlのバックアップで使うコマンドは「pg_dump」です。

「pg_dump」は以下のように使用します。

pg_dump -U ユーザ名 -d データベース名 -t テーブル名 > 保存場所+ファイル名.sql

 

実際の手順

「db1」というデータベースにある「test1」というテーブルをバックアップすることを目的とします。

まず、postgresqlを実行するフォルダまで移動します。(私の場合↓)

cd C:\Program Files\PostgreSQL\10\bin

 

次に、db1に接続します。(私の場合↓)

psql -U postgres -d db1

 

目的のテーブルが存在していることを確認します。

select * from test1;

 

確認が出来たら、データベースから切断します。

\q

 

test1のバックアップを取っていきます。(私の場合↓)

psql -U postgres -d db1 -t test1 > C:\data\test1.sql

 

バックアップされているか確認します。テーブルをバックアップした場所まで移動します。また、移動した先でファイルの一覧を表示します。(私の場合↓)

cd C:\data
dir

 

以上で「pg_dump」によるテーブルのバックアップは終了です。

 

 

PostgreSQLのリストア

postgresqlのリストアで使うコマンドは「psql」です。

「psql」でリストアするコマンドは以下の通りです。

psql -U ユーザ名 -d データベース名 < 保存場所+ファイル名

 

実際の手順

「db1」というデータベースに「test1」というテーブルをリストアすることを目的とします。

まず、postgresqlを実行するフォルダまで移動します。(私の場合↓)

cd C:\Program Files\PostgreSQL\10\bin

 

「test1.sql」をリストアします。(私の場合↓)

psql -U postgres -d db1 < C:\data\test1.sql

 

リストアされたことを確認するためにデータベースに接続して、テーブル一覧でテーブルを確認します。または、SELECT文を使ってテーブルの中身を確認します。

確認が取れたら終了です。

データベースにリストアするテーブルと同じ名前があるとエラーが起こる可能性があります。

 

 

スポンサードサーチ


まとめ

今回は、PostgreSQLのバックアップとリストアについて紹介してみました。

 

pg_dump(バックアップ)

pg_dump -U ユーザ名 -d データベース名 -t テーブル名 > 保存場所+ファイル名

 

psql(リストア)

psql -U ユーザ名 -d データベース名 < 保存した場所+ファイル名

 

本記事が皆様のお役に立てたら幸いです。

最後までお読みいただきありがとうございます。


スポンサードサーチ