データベース二重化処理で異常が発生した場合の両ノードで連携してリカバリを行う手順を説明します。
なお、両ノードで連携してリカバリを行う場合、正系ノードの利用者運用を停止する必要があります。しかし、正系ノードの利用者業務をすぐに停止できない場合は、ログ破棄を利用することで、正系ノードの利用者業務を停止可能になるまで待ってから、夜間や運休日にリカバリを行うことが可能です。下記の手順ではログ破棄を利用する手順を説明しています。
操作の手順
データベースサーバ1の操作
dxsvstopコマンドを実行してDBミラーリングサービスを停止します。
> dxsvstop
異常原因に応じて、データベースの全件複写のリカバリを実施します。
dxsvstartコマンドのcオプションを実行して、DBミラーリングサービスを開始します。
> dxsvstart -c
データベースサーバ2の操作
データベース二重化処理での異常をメッセージにより確認します。
dxsvstopコマンドのmオプションを実行して、DBミラーリングサービスを保守停止します。
> dxsvstop -m
rdbbcdcuコマンドのVオプションを実行して、主系RLPを特定します。以下の方法でrdbbcdcuコマンドを実行し、出力されるRLPnameを確認します。
その後、主系RLPのRLP動作環境ファイルのREF_LOG_PURGEパラメタを編集して、ログ破棄を指定します。
> rdbbcdcu -V LogGroup : system RLCbuffNum : 128 RLCbuffSize : 2K RLCnum : 10 RLCsize : 10240K RLPid RLPname Kind OnMode OnStat RLPstat InhCause ConStat DisConCause LogRemain 1 rlp001 duplicate reflect suspend normal - disconnection - -
dxsvstartコマンドのrオプションを実行して、DBミラーリングサービスを開始します。DBミラーリングサービスが開始すると、DBミラーリングシステムがログ破棄を実施し、データベース二重化処理を開始します。
> dxsvstart -r
正系ノードでのdxsvstopコマンド実行による副系ノードのDBミラーリングサービスの停止を、以下のメッセージにより確認します。
12136: 相手ノードからの要求によりDBミラーリングサービスを通常停止しました
異常原因に応じて、全件複写によりデータベースをリカバリします。
手順3 と同じ方法で主系RLPを特定します。その後、主系RLPのRLP動作環境ファイルのREF_LOG_PURGEパラメタを編集し、ログ破棄の指定を解除します。
dxsvstartコマンドのrオプションを実行して、DBミラーリングサービスを開始します。DBミラーリングサービスが開始すると、DBミラーリングシステムがデータベース二重化処理を開始します。
> dxsvstart -r
アプリケーションサーバの操作
DBミラーリングサービスを停止する前に、利用者業務を停止します。
利用者業務を再開します。
注意
ログ破棄を利用した状態でのDBミラーリングサービス中は、異常が発生した資源に対するノード間のデータベースの等価性が保証されていない状態です。この状態でノード切替えが発生した場合には、ノード切替え前の正系ノードからデータベースのデータをリカバリする必要があります。
参照
全件複写によるデータベースのリカバリについては“11.4.2.2 全件複写によるデータベースのリカバリ”を参照してください。
主系RLPの特定方法については“9.2.1 主系RLPの特定方法”を参照してください。
ログ破棄を利用したリカバリ方法については“11.8.6.4 ログ破棄を利用したリカバリ”を参照してください。