両ノードで同時に行うデータベースの定義操作の手順を以下に説明します。
操作の手順
データベースサーバ1の操作
DBミラーリングサービスを通常停止します。
> dxsvstop |
データベースの定義操作を行います。
複写元RLPをrdbbcdcuコマンドで特定します。
rdbbcdcuコマンドのVオプションおよび、bオプションを実行してDCU構成を確認します。
> rdbbcdcu -V -b LogGroup : system RLCbuffNum : 128 RLCbuffSize : 2K RLCnum : 3 RLCsize : 10240K RLPid RLPname Kind OnMode OnStat RLPstat InhCause ConStat DisConCause LogRemain 1 rlp001 origin capture switch normal - disconnection - - 2 rlp002 duplicate init switch normal - disconnection - -
2つのRLPのうち、“RLP種別(Kind)”が“origin”のRLPが複写元RLPです。rdbbcmapコマンドのEオプションおよび、pオプションを実行して資源識別子を抽出し、副系ノードに転送します。
> rdbbcmap -E -p 複写元RLP名 資源識別子抽出ファイル名
データベース資源の関連付けは、定義変更による影響があるロググループに対して実施します。
DCUの2つのRLPのうち、複写先RLPについて、セットアップスクリプトdxfmtmndb.batのdオプションおよび、pオプション、Mオプションを実行して、RLP管理オブジェクトを初期化します。
> dxfmtmndb.bat -d 従系RLPのRLP定義ファイル名 -p 従系RLPのRLP名 -M
DCUの2つのRLPのうち複写先RLPについて、rdbbcmapコマンドのRオプションおよび、pオプションを実行して資源識別子の登録および確認を行います。データベースサーバ2で抽出した資源識別子抽出ファイル名を指定します。
> rdbbcmap -R -p 複写先RLP名 資源識別子抽出ファイル名
rdbfmt、rdbsloaderコマンドの実行または業務アプリケーションにより定義したDSIに初期データを投入します。
rdbunlコマンドを実行して表のDSIの退避データを取得し、副系ノードに転送します。
dxsvstartコマンドのcオプションを実行して、DBミラーリングサービスを開始します。
> dxsvstart -c
rdbudsiコマンドの実行により両ノードの格納件数を比較するなどの方法で、整合性確認を実施します。
データベースサーバ2の操作
以下のメッセージにより、正系ノードでのdxsvstopコマンドの実行による副系ノードのDBミラーリングサービスの停止を確認します。
12136: 相手ノードからの要求によりDBミラーリングサービスを通常停止しました
データベースの定義操作を行います。
複写先RLPをrdbbcdcuコマンドで特定します。
rdbbcdcuコマンドのVオプションおよび、bオプションを実行してDCU構成を確認します。
> rdbbcdcu -V -b LogGroup : system RLCbuffNum : 128 RLCbuffSize : 2K RLCnum : 3 RLCsize : 10240K RLPid RLPname Kind OnMode OnStat RLPstat InhCause ConStat DisConCause LogRemain 1 rlp001 duplicate reflect switch normal - disconnection - - 2 rlp002 origin init switch normal - disconnection - -
2つのRLPのうち、“RLP種別(Kind)”が“duplicate”のRLPが複写先RLPです。複写先RLPについて、セットアップスクリプトdxfmtmndb.batのdオプションおよび、pオプション、Mオプションを実行して、RLP管理オブジェクトを初期化します。
> dxfmtmndb.bat -d 主系RLPのRLP定義ファイル名 -p 主系RLPのRLP名 -M
DCUの2つのRLPのうち、複写先RLPについて、rdbbcmapコマンドのRオプションおよび、pオプションを実行して、資源識別子の登録および確認を行います。データベースサーバ1で抽出した資源識別子抽出ファイル名を指定します。
> rdbbcmap -R -p 複写先RLP名 資源識別子抽出ファイル名
DCUの2つのRLPのうち、複写元RLPについて、rdbbcmapコマンドのEオプションおよび、pオプションを実行して資源識別子を抽出し、任意の方法で正系ノードに転送します。
> rdbbcmap -E -p 複写元RLP名 資源識別子抽出ファイル名
rdbsloaderコマンドを実行して、表のDSIの退避データを適用し、データを全件複写します。
dxsvstartコマンドのrオプションを実行して、DBミラーリングサービスを開始します。
> dxsvstart -r
アプリケーションサーバの操作
利用者業務を停止します。
利用者業務を再開します。
注意
データベース資源の関連付けは表のDSI、または順序の定義変更が発生した場合に必要です。“10.3.5 データベース資源の関連付けのポイントと注意事項”を参照してください。
格納データを暗号化している場合でも、rdbbcmapコマンドを使用して作成した資源識別子抽出ファイルは暗号化されません。資源識別子抽出ファイルを相手ノードに転送するときは、opensslコマンドなどのツールを使用して資源識別子抽出ファイルを暗号化してください。
格納データを暗号化している場合でも、rdbunlコマンドを使用して取得したDSIの退避データは暗号化されません。退避データを副系ノードに転送するときは、opensslコマンドなどのツールを使用して退避データを暗号化してください。また、退避データが不要となった際にはファイルを削除してください。
データベース定義が正しくない場合、資源の関連付け操作またはRERUNログ反映処理が異常終了します。この場合、以下の対処を実施してください。
データベース資源の関連付けの操作が異常終了した場合
正系ノードと副系ノードのデータベース定義の見直しを行ってください。
RERUNログ反映処理が異常終了した場合
DBミラーリングサービスの通常停止を実行するために、異常になった資源に関してRLPに残存するRERUNログをすべて破棄します(ログ破棄)。
その後、利用者業務を停止してからDBミラーリングサービスを通常停止し、データベースの再定義またはデータベース資源の関連付けを行います。
データベースのバックアップおよびメモリチューニングなど、変更したデータベース運用に必要な操作は利用者業務を開始する前に実施してください。
参考
正系ノードのデータベース(DSI)が初期状態で運用を開始する場合は、rdbunlコマンドおよびrdbsloaderコマンドで全件複写する代わりに、rdbfmtコマンドを両ノードで実施することも可能です。
参照
rdbsloaderコマンド、rdbunlコマンド、rdbfmtコマンドおよびrdbudsiコマンドについては“コマンドリファレンス”を参照してください。
副系ノードでの資源識別子の確認方法については “5.3.9.2 関連付けの手順”を参照してください。
退避データファイルの削除方法については“RDB運用ガイド”を参照してください。
ログ破棄の詳細は“11.8.6.4 ログ破棄を利用したリカバリ”を参照してください。