インストールおよびセットアップ完了後に、バックアップファイルを作成する方法について説明します。
バックアップの準備
WALログを保存するための、アーカイブディレクトリを作成してください。WALログは、オンラインバックアップ実行時のトランザクションの記録用ファイルです。
注意
【Linux】
アーカイブディレクトリは、Systemwalker Service Catalog Managerのデータベース用OSユーザー(pgctbss)がフルコントロール権限を持つ必要があります。
また、LD_LIBRARY_PATHを設定する必要があります。以下のコマンドを実行してください。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/FJSVctbss/fjsvpgs91/lib/
データベース設定ファイルの編集
【Windows】
以下のデータベース設定ファイルを編集します。
%SWCTMG_HOME%\pgctbss\data\postgresql.conf
編集対象パラメーターと変更後の値は以下です。
・wal_level=archive
・archive_mode=on
・archive_command='<WALログファイルのコピーコマンド>'
WALログファイルのコピーコマンドは以下を参考に編集してください。
例:
copy "%p" "<アーカイブディレクトリ作成先の絶対パス>\\%f"
注意
アーカイブディレクトリ作成先の絶対パスを設定する際、"\"を"\\"に変換してください。
例:”C:\\Fujitsu\\Systemwalker\\SWCTMG\\archivedir”
【Linux】
以下のデータベース設定ファイルを編集します。
/var/opt/FJSVctbss/pgsql/data/postgresql.conf
編集対象パラメーターと変更後の値は以下です。
・wal_level=archive
・archive_mode=on
・archive_command='<WALログファイルのコピーコマンド>'
WALログファイルのコピーコマンドは以下を参考に編集してください。
例:
/bin/cp -f %p <アーカイブディレクトリ作成先の絶対パス>/%f
参考
バックアップ実行時に、%pはコピー元ファイル名に、%fはコピー先ファイル名に自動的に変換されます。
サービスの再起動
データベースサービスを再起動します。再起動の方法は”9.1 起動/停止”を参照してください。
バックアップの開始
以下のコマンドを実行し、バックアップを開始します。
【Windows】
"%SWCTMG_HOME%\fjsvpgs91_64\bin\psql.exe" -p <PGS_PORT> -U pgctbss -c "SELECT pg_start_backup(now()::text, true)"
【Linux】
/opt/FJSVctbss/fjsvpgs91/bin/psql -p 5443 -U pgctbss -c "SELECT pg_start_backup(now()::text, true)"
データベースのデータディクショナリのコピー
以下のデータベースのデータディクショナリフォルダをコピーします。例のコピーコマンドを参考にしてください。
【Windows】
%SWCTMG_HOME%\pgctbss\data
【Linux】
/var/opt/FJSVctbss/pgsql/data/
コピーコマンドの例
【Windows】
robocopy "%SWCTMG_HOME%\pgctbss\data" <コピー先フォルダパス> /MIR /XD "%SWCTMG_HOME%\pgctbss\data\pg_xlog" /XF " SWCTMG_HOME%\pgctbss\data\postmaster.pid"
【Linux】
rsync -av --delete --exclude=pg_xlog --exclude=postmaster.pid /var/opt/FJSVctbss/pgsql/data/ <コピー先ディレクトリ>
注意
データベースディクショナリフォルダ内、pg_xlogフォルダおよびpostmaster.pidファイルを除いてコピーしてください。
バックアップの停止
以下のコマンドを実行し、バックアップを開始します。
【Windows】
"%SWCTMG_HOME%\fjsvpgs91_64\bin\psql.exe" -p <PGS_PORT> -U pgctbss -c "SELECT pg_stop_backup()"
【Linux】
/opt/FJSVctbss/fjsvpgs91/bin/psql -p 5443 -U pgctbss -c "SELECT pg_stop_backup()"