Symfowareのバックアップサーバ運用について説明します。
バックアップサーバ運用の前に、「4.2.4 事前準備」を参照して、Symfowareのバックアップサーバ運用に必要な環境を設定してください。
「13.6.2 swsrpbackup_symfoware(Symfowareバックアップ実行コマンド)」でバックアップを実行します。
バックアップ先となるバックアップボリュームはレプリケーショングループで指定します。複数世代のバックアップ運用を行う場合は、レプリケーショングループを切り替えながらバックアップ運用を行います。
バックアップ単位
以下のどちらかのバックアップ単位でバックアップを行います。
バックアップ単位 | 説明 |
---|---|
ロググループ | ロググループに含まれる業務ボリュームを一度にバックアップします。 |
業務ボリューム | 業務ボリューム単位でバックアップします。 |
バックアップ方法
バックアップは次のどちらかの方法で行います。
バックアップ方法 | 説明 |
---|---|
通常ダンプ | アーカイブログ運用中(通常運用中)のデータベースをバックアップします。 |
参照ダンプ | 長期保存などの目的のためにアーカイブログ運用から切り離されたデータベースをバックアップします。 |
注意
業務ボリューム指定でバックアップする場合、マルチデータベーススペース(1つの実表やインデックスを、複数のデータベーススペースに割り付けた物理構造)を含む業務ボリュームの参照ダンプは指定できません。
参照ダンプでバックアップする場合、Symfowareのrdbrtrコマンドを用いて、バックアップする業務ボリューム内の全DSI(実表に対してその格納構造を表現するもの)に更新抑止を設定(データ書込み不可状態)する必要があります。
二次媒体へのバックアップ
Symfowareのバックアップ時に、リカバリ制御ファイル出力先ディレクトリに次のファイルが出力されます。
リカバリ制御ファイル
リカバリ制御ファイルはリカバリーする際に使用するファイル
バックアップ履歴ファイル
バックアップ履歴を表示する際に使用するファイル
テープバックアップソフトウェアを利用して、バックアップボリュームを二次媒体にバックアップする場合は、これらのファイルも同時に退避します。
二次媒体へバックアップを行う場合は、次の手順で行います。
バックアップの実行
「4.2.5.1 バックアップの実行」を実施します。
リカバリ制御ファイルとバックアップ履歴ファイルの退避
バックアップ時、リカバリ制御ファイルとバックアップ履歴ファイルは、リカバリ制御ファイル出力先ディレクトリの次のフォルダに出力されます。
以下のフォルダ配下のすべてのファイルを、二次媒体へ退避します。
<リカバリ制御ファイル出力先ディレクトリ>\<LogGroupName_RdbName>\<RpGroupName>
LogGroupName_RdbName … ロググループ名(※) + "_" + RDBシステム名 (※)
RpGroupName … レプリケーショングループ名(※)
※: バックアップ時に指定したロググループ名、RDBシステム名、グループ名 |
リカバリ制御ファイル出力先ディレクトリは、「12.1.1.7.1 リカバリ制御ファイル出力先ディレクトリのバックアップ」を参照してください。
注意
バックアップ時、リカバリ制御ファイルとバックアップ履歴ファイルは、Symfowareサーバ上に出力されます。それらのファイルを二次媒体へ退避する場合は、Symfowareサーバからバックアップサーバへコピーしてから、二次媒体へ退避してください。
ネットワークドライブを利用してバックアップサーバへコピーする例を以下に示します。
バックアップサーバ上の一時領域を、ネットワークドライブ(Z:)として割り当てます。
net use Z: \\BK-SV\<共有名> |
XCOPYコマンドでファイルをコピーします(/Oスイッチによりファイル所有権とACL情報もコピーされます)。
xcopy <リカバリ制御ファイル出力先ディレクトリ>\<LogGroupName_RdbName>\<RpGroupName> Z:\<LogGroupName_RdbName>\<RpGroupName> /e /s /y /F /O /X /R /H |
バックアップサーバ上でリカバリ制御ファイルとバックアップ履歴ファイルを二次媒体に退避します。
ネットワークドライブの割当てを解除します。
net use Z: /delete |
バックアップボリュームの退避
バックアップボリュームを二次媒体へ退避します。
ポイント
手順2で退避したリカバリ制御ファイル、バックアップ履歴ファイル、および手順3で退避したバックアップボリュームの情報は、セットで保管します。
バックアップで退避したデータの復元は、「13.6.3 swsrprestore_symfoware(Symfowareリカバリー実行コマンド)」で行います。リカバリー元となるバックアップボリュームはレプリケーショングループで指定します。
リカバリー単位
以下のどちらかのリカバリー単位でリカバリーを行います。
ロググループ
ロググループに含まれる業務ボリュームを一度にリカバリーします。
同一ロググループ内の複数(または1つ)の業務ボリューム
デバイスリストファイルを使用して同一ロググループ内の複数(または1つ)の業務ボリュームを一括してリカバリーします。デバイスリストファイルの記述方法は、「4.1.5.3.1 デバイスリストファイルの記述方法」を参照してください。
業務ボリューム
業務ボリューム単位でリカバリーします。
リカバリー方法
通常ダンプで退避したデータは、次のどちらかの方法でリカバリーを行います。
最新状態への復旧
リカバリ終了点を指定した特定時点への復旧
「13.6.3 swsrprestore_symfoware(Symfowareリカバリー実行コマンド)」の-eオプションでリカバリポイントを指定して実行します。リカバリポイントの詳細は、Symfoware Serverのマニュアルを参照してください。
バックアップ時点への復旧
「13.6.3 swsrprestore_symfoware(Symfowareリカバリー実行コマンド)」に-aオプションを指定して実行します。
参照ダンプで退避したデータは、「13.6.3 swsrprestore_symfoware(Symfowareリカバリー実行コマンド)」でリカバリー方法を指定せず(-eオプションや-aオプションの指定なし)、または、-aオプションを指定して実行します。
注意
リカバリー時、リカバリー対象となるデータベーススペースがアクセス禁止状態になっている必要があります。アクセス禁止状態にする方法は、Symfoware Serverのマニュアルを参照してください。
ロググループに含まれる業務ボリュームを個別にリカバリーする場合、ロググループ内の表間のリレーションはデータベース管理者の責任で整合させる必要があります。
「最新状態への復旧」または「リカバリ終了点を指定した特定時点への復旧」を行う場合、リカバリー時に必要なアーカイブログ退避ファイル名を列挙したファイルを、Symfowareサーバに作成しておき、リカバリー時に指定する必要があります。ただし、アーカイブログファイルを外部媒体に保管してある場合だけです。ファイルの記述方法は、Symfoware Serverのマニュアルを参照してください。
リカバリーが作業ディレクトリの空き容量不足で失敗する場合は、「13.6.3 swsrprestore_symfoware(Symfowareリカバリー実行コマンド)」の-wオプションを使用して、一時的に別のディレクトリを作業ディレクトリとして再実行してください。
「リカバリ終了点を指定した特定時点への復旧」または「バックアップ時点への復旧」を行う場合、Symfowareの管理情報を復旧する処理が行われます。この処理はリカバリーの実行処理の一部として実施されるため、コマンドの処理に時間がかかります。
リカバリーしたデータのバックアップ方法(通常ダンプまたは参照ダンプ)がロググループ内に混在する場合は、ロググループ単位ではリカバリーできません。
二次媒体からのリカバリー
二次媒体からリカバリーを行う場合は、一旦バックアップ時のバックアップボリュームに復元してから、リカバリーを行います。二次媒体から直接業務ボリュームへリカバリーを行うことはできません。
二次媒体からのリカバリー手順は、以下のとおりです。
バックアップ履歴の削除
バックアップを取得したときと同じロググループ、レプリケーショングループにバックアップ履歴がある場合は、事前にバックアップ履歴を削除します。
リカバリ制御ファイルとバックアップ履歴ファイルの復元
「二次媒体へのバックアップ」で退避したリカバリ制御ファイルとバックアップ履歴ファイルを復元します。
以下のディレクトリに復元します。
<リカバリ制御ファイル出力先ディレクトリ>\<LogGroupName_RdbName>\<RpGroupName> LogGroupName_RdbName … ロググループ名(※) + "_" + RDBシステム名 (※) RpGroupName … レプリケーショングループ名(※) ※: バックアップ時と同じSymfowareサーバ名、ロググループ名、RDBシステム名、グループ名 |
リカバリ制御ファイル出力先ディレクトリは、「12.1.1.7.1 リカバリ制御ファイル出力先ディレクトリのバックアップ」を参照してください。
注意
リカバリ制御ファイルとバックアップ履歴ファイルの復元は、ファイルの所有権・アクセス権が退避時と同じになるように実施してください。
「二次媒体へのバックアップ」で退避したリカバリ制御ファイルとバックアップ履歴ファイルをバックアップサーバに復元する場合は、バックアップサーバからSymfowareサーバ上のリカバリ制御ファイル出力先へコピーします。
ネットワークドライブを利用してSymfowareサーバへコピーする例を以下に示します。
バックアップサーバ上の一時領域をネットワークドライブ(Z:)として割り当てます。(Symfowareサーバで実施)
net use Z: ¥¥BK-SV¥<共有名> |
二次媒体から一時領域へ「二次媒体へのバックアップ」で退避したリカバリ制御ファイルとバックアップ履歴ファイルを復元します。(バックアップサーバで実施)
XCOPYコマンドでファイルをコピーします。/Oスイッチによりファイル所有権とACL情報もコピーします。(Symfowareサーバで実施)
xcopy Z:\<LogGroupName_RdbName>\<RpGroupName> <リカバリ制御ファイル出力先ディレクトリ>\<LogGroupName_RdbName>\<RpGroupName> /e /s /y /F /O /X /R /H |
ネットワークドライブの割当てを解除します。(Symfowareサーバで実施)
net use Z: /delete |
バックアップボリュームの復元
バックアップ時に利用したグループのバックアップボリュームに、二次媒体からバックアップデータを復元します。
リカバリーの実行
バックアップ時と同じロググループ、レプリケーショングループを指定して、「4.2.5.2 リカバリーの実行」を実行します。
バックアップ履歴の削除
バックアップ履歴の削除を行うことで、リカバリーに使用したリカバリ制御ファイルとバックアップ履歴ファイルを削除します。
バックアップ履歴情報を参照・削除します。
この作業は、「13.6.4 swsrphistory_symfoware(Symfowareバックアップ履歴情報表示/削除コマンド)」で行います。
この作業は、「13.6.4 swsrphistory_symfoware(Symfowareバックアップ履歴情報表示/削除コマンド)」で行います。