ここでは、レプリケーションの運用を保守する方法について説明します。
ログファイルの再作成とリカバリ
データベースの保守
なお、ここでは、表単位のレプリケーションの抽出定義と、グループ単位のレプリケーションのレプリケーショングループおよびレプリケーショングループに属する抽出定義を、すべて“抽出定義”とまとめて表現しています。
トランザクションログファイルおよび差分ログファイルの容量を拡張する場合には、トランザクションログファイルおよび差分ログファイルの再作成が必要になります。
また、入出力障害などで、トランザクションログファイルおよび差分ログファイルが破壊された場合は、トランザクションログファイルおよび差分ログファイルに対してシステムが閉塞(アクセス禁止)状態になります。この場合も、それぞれのログファイルの再作成が必要です。
ここでは、各ログファイルの再作成の方法について説明します。
種類 | 目的 | 運用で必要なケース |
---|---|---|
差分ログファイル | 差分ログファイルの再作成(定義変更) | 差分ログファイル容量などの作成内容を変更する場合に実施します。 |
差分ログファイルの再作成(容量不足、閉塞からのリカバリ) | 差分ログファイルの容量不足、または差分ログファイルが閉塞した場合のリカバリ作業で実施します。 | |
トランザクションログファイル | トランザクションログファイルの再作成(定義変更) | トランザクションログファイル容量などの作成内容を変更する場合に実施します。 |
トランザクションログファイルの再作成(閉塞からのリカバリ) | トランザクションログファイルが閉塞した場合のリカバリ作業で実施します。 | |
トランザクションログファイルへの差分ログ停止後の再開 | トランザクションログファイルへの差分ログ停止後に差分ログの取得を再開する場合に実施します。 トランザクションログファイルへの差分ログ停止を行う操作とは以下です。
|
トランザクションログファイルの再作成の手順は、以下のとおりです。
複写元システムのすべての利用者プログラムが実行中でないことを確認してください。実行中の場合は、利用者プログラムの終了を待ってから操作を始めてください。
複写元システムのすべてのレプリケーション業務が処理中でないことを確認します。処理中の場合は、業務の完了を待ってから操作を始めてください。
複写元システムのすべての抽出定義に対して、差分ログの追出しを行います。
複写元システムのすべての一括差分複写業務を実行します。(上記までのすべての差分ログを複写先システムに手動などで反映します)
複写元システムのすべての一括差分複写業務を中止します。
複写元システムのすべての抽出定義に対して、差分ログの取得を終了します。
Symfoware/RDBの停止操作を行います。
トランザクションログファイルのデータ部とインデックス部を削除します。削除の方法については、“コマンドリファレンス”の“lxreplogコマンド(トランザクションログファイルのデータ部、インデックス部の削除)”を参照してください。
トランザクションログファイルのデータ部とインデックス部を再作成します。トランザクションログファイルの容量を増やす場合などは、この時に容量を大きく指定します。作成の方法については、“2.1.2.3.4 トランザクションログファイルの作成”および“コマンドリファレンス”の“lxreplogコマンド(トランザクションログファイルのデータ部、インデックス部の作成)”を参照してください。
Symfoware/RDBの再起動を行います。
停止したすべての抽出定義に対して、差分ログの取得を開始します。
中止した一括差分複写業務を開始します。
利用者プログラムを開始します。
各操作の詳細については、以下の参照項目を参照してください。
再作成の対象となる差分ログファイルを定義した抽出定義に対して以下の操作を行います。なお、本手順は差分ログファイルが正常な状態(容量不足、閉塞などのエラーが発生していない)で差分ログの運用が継続可能な場合の手順を説明しています。
複写元データベースを更新する利用者プログラムが実行中でないことを確認してください。実行中の場合は、利用者プログラムの終了を待ってから操作を始めてください。
対象の抽出定義を指定したレプリケーション業務が処理中でないことを確認します。処理中の場合は、業務の完了を待ってから操作を始めてください。
対象の抽出定義に対して、差分ログの追出しを行います。
複写元システムのすべての一括差分複写業務を実行します。(上記までのすべての差分ログを複写先システムに手動などで反映します)
対象の抽出定義を指定した一括差分複写業務を中止します。
対象の抽出定義に対して、差分ログの取得を終了します。
対象の抽出定義を削除します。削除の方法については、“2.1.4.3 抽出定義の削除”および“コマンドリファレンス”の“lxrepdroコマンド”を参照してください。
削除した抽出定義と同じ名前で、抽出定義を再定義します。差分ログファイルの容量を増やす場合などは、この時に容量を大きく指定します。定義の方法については、“2.1.4 抽出定義”および“コマンドリファレンス”の“lxrepcreコマンド”を参照してください。
停止したすべての抽出定義に対して、差分ログの取得を開始します。
中止した一括差分複写業務を開始します。
利用者プログラムを開始します。
各操作の詳細については、以下の参照項目を参照してください。
注意
上記の4.または6.の処理でエラーになった場合には、7.の処理での強制削除(-eオプション)を実行してください。
差分ログファイルの容量不足または閉塞が発生した場合は、再作成の対象となる差分ログファイルに関連する抽出定義に対して以下の操作を行います。なお、本操作を行う場合は、全複写による複写先データベースの復旧が必要です。
複写元データベースを更新する利用者プログラムが実行中でないことを確認してください。実行中の場合は、利用者プログラムの終了を待ってから操作を始めてください。
対象の抽出定義を指定したレプリケーション業務が処理中でないことを確認します。処理中の場合は、業務の完了を待ってから操作を始めてください。
対象の抽出定義を指定した一括差分複写業務を中止します。
対象の抽出定義に対して、差分ログの追出しを行います。
対象の抽出定義に対して、差分ログの取得を終了します。
対象の抽出定義に対して、差分ログの破棄を行います。
対象の抽出定義を削除します。削除の方法については、“2.1.4.3 抽出定義の削除”および“コマンドリファレンス”の“lxrepdroコマンド”を参照してください。
必要に応じて、差分ログファイルを配置しているディスクを再設定します(ディスク交換や容量拡張など)。
削除した抽出定義と同じ名前で、抽出定義を再定義します。差分ログファイルの容量を増やす場合などは、この時に容量を大きく指定します。定義の方法については、“2.1.4 抽出定義”および“コマンドリファレンス”の“lxrepcreコマンド”を参照してください。
再定義した抽出定義に対して全複写業務を行います。これにより、複写元データベースと複写先データベースの同期をとることができます。
停止したすべての抽出定義に対して、差分ログの取得を開始します。
中止した一括差分複写業務を開始します。
利用者プログラムを開始します。
各操作の詳細については、以下の参照項目を参照してください。
注意
上記の4.または6.の処理でエラーになった場合には、7.の処理での強制削除(-eオプション)を実行してください。
トランザクションログファイルが閉塞した場合の再作成の手順を以下に示します。
複写元システムのすべての利用者プログラムが実行中でないことを確認してください。実行中の場合は、利用者プログラムの終了を待ってから操作を始めてください。
複写元システムのすべてのレプリケーション業務が処理中でないことを確認します。処理中の場合は、業務の完了を待ってから操作を始めてください。
複写元システムのすべての一括差分複写業務を中止します。
Symfoware/RDBの停止操作を行います。
トランザクションログファイルのデータ部とインデックス部を削除します。削除の方法については、“コマンドリファレンス”の“lxreplogコマンド(トランザクションログファイルのデータ部、インデックス部の削除)”を参照してください。
必要に応じて、トランザクションログファイルを配置しているディスクを再設定します(ディスク交換など)。
トランザクションログファイルを再作成します。
作成の方法については、“2.1.2.3.4 トランザクションログファイルの作成”および“コマンドリファレンス”の“lxreplogコマンド(トランザクションログファイルのデータ部、インデックス部の作成)”を参照してください。
Symfoware/RDBの再起動を行います。
複写元システムのすべての抽出定義に対して、差分ログの取得を終了します。
複写元システムのすべての抽出定義に対して、差分ログの破棄を行います。
複写元システムのすべての抽出定義に対して全複写業務を行います。これにより、すべての複写元データベースと複写先データベースの同期をとることができます。
停止したすべての抽出定義に対して、差分ログの取得を開始します。
中止した一括差分複写業務を開始します。
利用者プログラムを開始します。
各操作の詳細については、以下の参照項目を参照してください。
以下の状態から差分ログの取得を再開する場合は、トランザクションログファイルを再作成します。手順は“2.2.5.1.4 トランザクションログファイルの再作成(閉塞からのリカバリ)”を参照してください。
トランザクションログファイルの使用率がLinkexpress Replication optionの動作環境ファイルのREP_TRF_COFFオペランドの指定値に達したため、差分ログの取得停止となった場合
複写元データベースおよび複写先データベースに異常が発生した場合の、データベースの復旧に伴うレプリケーションシステムの保守作業について説明します。
参照
データベースの保守の方法については、“Symfoware Server RDB運用ガイド”を参照してください。
複写元データベースの復旧後、複写元データベースを異常発生直前の状態に戻す場合は、全複写業務による複写先データベースの再創成は不要です。複写元データベースの復旧を行う前に、レプリケーション業務をLinkexpressクライアントの“業務監視ウィンドウ”またはlxcanwrkコマンド(-m n指定)によって停止し、利用者プログラムの起動前にレプリケーション (一括差分複写)を、Linkexpressクライアントの“業務監視ウィンドウ”またはlxstrwrkコマンドによって起動してください。
複写元データベースが異常発生直前の状態に戻らない場合は、以下の手順によって複写先データベースの再創成を行います。
複写元システム | 複写先システム |
---|---|
1.利用者プログラムの停止 | |
2.レプリケーション業務(一括差分複写)の停止 | |
3.データベースの復旧 | |
4.差分ログの破棄 | |
5.全複写業務の開始 | |
6.差分ログの取得開始 | |
7.レプリケーション業務(一括差分複写)の起動 | |
8.利用者プログラムの起動 |
複写元システム | 複写先システム |
---|---|
1.利用者プログラムの停止 | |
2. レプリケーション業務(一括差分複写)の停止 | |
3. データベースの復旧 | |
4. 差分ログの破棄 | |
5. 全複写業務の開始 | |
6. 差分ログの取得開始 | |
7. レプリケーション業務(一括差分複写)の起動 | |
8. 利用者プログラムの起動 |
利用者プログラムを停止します。
レプリケーション業務(一括差分複写)を、Linkexpressクライアントの“業務監視ウィンドウ”またはlxcanwrkコマンド(-m n指定)によって停止します。
データベースのメディアリカバリによって、データベースを復旧します。
複写先データベースに未反映の差分ログを、以下のコマンドによって破棄します。
復旧対象データベースに該当する表単位レプリケーションまたはグループ単位レプリケーションの場合
lxreplog -I {-r 抽出定義名 | -g 抽出グループ名} -c
復旧対象データベースが、レプリケーションシステム全体の場合
lxreplog -I -S
全複写業務を実行し、複写先データベースを再創成します。
lxrepenaコマンドによって、差分ログの取得を開始します。
レプリケーション業務(一括差分複写)を、Linkexpressクライアントの“業務監視ウィンドウ”またはlxstrwrkコマンドによって起動します。
複写先データベースの復旧後、複写先データベースが異常発生直前の状態に戻る場合は、全複写業務による複写先データベースの再創成は不要です。
複写先データベースが異常発生直前の状態に戻らない場合は、複写先データベースの再創成を行います。再創成の手順は、“複写元データベースに異常が発生した場合”と同じです(データベースの復旧作業は、複写元システムで行います)。