(準備中)
ストリーミングレプリケーションはPostgreSQLの本体組み込みの機能です。
ストリーミングレプリケーション構成のバックアップは、NetVaultでは公式にはサポートしていません。
PostgreSQLのストリーミングレプリケーション構成はどのようにバックアップするのでしょうか。
PostgreSQLのバックアップとしては2つの方法があります。
- pg_dumpコマンドによるダンプバックアップ
- pg_basebackupとWALを利用するファイルベースバックアップ
ネットでググると、スタンバイノード側でpg_dumpを使用してバックアップができるようです。
NetVaultのPostgreSQLプラグインは、PostgreQSLの2つのバックアップ方法(pg_dumpとpg_basebackup)どちらにも対応しています。検証してみました
検証環境
- バックアップサーバ
- PostgreSQLサーバ(マスタ側)
- PostgreSQLサーバ(スタンバイ側)
作業履歴
- まずPostgreSQLのストリーミングレプリケーション構成を設定します
中略 - スタンバイ側のログを確認してスタンバイとして動作開始していることを確認します
- マスタ側で以下のコマンドにより、ストリーミングレプリケーションが動作していることを確認します
- pg_benchを実行してサンプルデータベース内に、pg_benchのテーブルを作ります
- スタンバイ側でpg_benchのテーブルがレプリケーションされたことを確認します
- NetVaultクライアントとPostgreSQLプラグインをスタンバイ側にインストールして設定します
- バックアップオプションとしてpg_dumpを選択して、バックアップジョブを作成します
SQL Logical Data Dump がpg_dumpになります
File level Data Copy がpg_basebackupとWALのバックアップになります - バックアップジョブを実行し、正常終了を確認しました