PostgreSQLのバックアップとリストア(pg_dump・pg_restore)
PostgreSQLのバックアップとリストアをする
PostgreSQLのデータベースをバックアップするには「pg_dump」を使用して、リストアする時は「pg_restore」を利用してバックアップ及びリストアします
pg_dumpでデータベースをバックアップする
データベースをバックアップするには、「pg_dump」コマンドを利用します。
下記のコマンドでは、/var/tmp/demoshop.db に demoshopのデータベースをカスタム形式で出力します
$ pg_dump -Fc demoshop -f /var/tmp/demoshop.db
オプションの詳細
-F 出力する際の形式を指定します(cがカスタム、tがtar、pがテキスト)
-f 出力するファイルを指定します。 ファイルを基にする出力形式ではこのパラメータは省くことができます。
データベースの上書きについては、「-c」のオプションを作成するとデータベースをレストアする時に、テーブル等のデータベースオブジェクトを削除できます。但し、このオプションは平文形式の場合にのみ有効ですので、アーカイブ形式では、pg_restoreを呼び出す時にこのオプションを指定します
pg_restoreでデータベースをレストアします
データベースをレストアするにはpg_restoreコマンドを利用します。
下記のコマンドでは、demoshopのデータベースに、カスタム形式でバックアップしたデータベース(/data/tmp/demoshop.db)を、上書きでレストアします。
「-c」のオプションがあるので、データベースを作成する前にテーブル等のデータベースオブジェクトを削除してからレストアにします
$ pg_restore -Fc -c -d demoshop /data/tmp/demoshop.db
オプションの詳細
-F アーカイブの形式を指定します。 pg_restoreは形式を自動認識するので、このオプションは必須ではありません。
(cがカスタム、tがtar、pがテキスト)
-c データベースを再作成前に、テーブルなどのデータベースオブジェクトを削除します
-d レストアするデータベースを指定します
ディスカッション
コメント一覧
まだ、コメントがありません