本章では、データベースのバックアップに関して説明します。
以下のバックアップ方法でバックアップすることにより、ディスク装置の物理的破損やデータの論理的破損が発生する直前や、バックアップ時点にリカバリできます。
WebAdminによるバックアップ
GUIにより直感的な画面操作でバックアップできます。
リカバリを行うときは、WebAdminでリカバリします。
pgx_dmpallコマンドによるバックアップ
スクリプトからpgx_dmpallコマンドを実行して、自動的にバックアップできます。
自動的にバックアップするためには、OSの自動化ソフトウェアに登録する必要があります。各OSのドキュメントに従って実施してください。
リカバリを行うときは、pgx_rcvallコマンドでリカバリします。
参考
pgx_dmpallコマンドとpgx_rcvallコマンドでは、ユーザーが作成したコピーコマンドを使用することで、データベースクラスタやテーブル空間に対する任意のバックアップ先へのバックアップおよび任意のバックアップ先からのリカバリを、任意のコピー方法で実施することができます。“第12章 コピーコマンドを使用したバックアップ/リカバリ”を参照してください。
WebAdminまたはpgx_dmpallコマンドを使用した場合の、バックアップ目安時間の導出式を示します。
バックアップ時間 = データ格納先の使用量 ÷ ディスク書込み性能 × 1.5
データ格納先の使用量:データ格納先のディスク使用量
ディスク書込み性能:運用を行うシステム環境における、1秒間あたりに書き込み可能な最大のデータ量(バイト/秒)の実測値
1.5:最も時間のかかるディスク書き込み以外の時間を見込んだ係数
pgx_dmpallコマンドでコピーコマンドを使用する場合、バックアップ時間はコピーコマンドの実装内容に依存します。
注意
スタンバイモードのストリーミングレプリケーションクラスタの一部であるインスタンスは、バックアップできません。
選択したバックアップ方法を継続して使用してください。
各バックアップ方法は、保存するデータ形式などに差異があります。そのため、以下の制約があります。
バックアップデータを使用して、異なる方法でリカバリすることはできません。
バックアップデータを異なる方法のバックアップデータに移行できません。
二重化したWALは、pgx_dmpallコマンドまたはWebAdminを使用するバックアップ・リカバリ運用以外では使用できません。
データベースに格納するデータを暗号化する場合、キーストアのバックアップやバックアップにおける留意事項があります。詳細は、以下を参照してください。
テーブル空間を定義した場合、バックアップを行ってください。バックアップを行わなかった場合、リカバリ実行時にテーブル空間のディレクトリ作成が行われず、リカバリが失敗することがあります。リカバリに失敗した場合は、イベントログを参照してテーブル空間のディレクトリ作成後、リカバリを再実行してください。
WebAdminによるバックアップを行う場合、WebAdminがデータベースに接続するために、以下のパスワードファイルをバックアップ中に一時的に作成します。
<ユーザープロファイルのフォルダ>\<ローカル設定のフォルダ>\Fujitsu\fsep_バージョン\インスタンス名\pgpass.conf
そのため、postgresql.confのcore_directoryパラメータに作成されるコアファイルや、log_directoryパラメータに作成されるログファイルを退避する場合には、同じディレクトリ配下にあるパスワードファイルを同時に退避しないようにしてください。
参考
以下の方式によるバックアップも可能です。これらの方法でバックアップをすることにより、バックアップを行った時点に復旧できます。
SQLによるダンプを用いたバックアップ
SQLを使用してデータをダンプします。データの移行にも使えるバックアップ方法です。
ファイルシステムレベルのバックアップ
インスタンスを停止し、OSコマンドなどを使用してデータベース資源をファイルとしてバックアップする方法です。
継続的アーカイブによるバックアップ
PostgreSQLの標準的なバックアップ方法です。
これらのバックアップ方法の詳細は、“PostgreSQL Documentation”の“Server Administration”の“Backup and Restore”を参照してください。