![[IBM i]](../images/iseries.gif)
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
高可用性のための、リレーショナル・データベースでのトランザクション・ログおよび補正ログの保管
オプションで、オペレーティング・システム・ファイルとしてではなく、リレーショナル・データベース内の WebSphere® Application Server トランザクションおよび補正ログを保管するよう選択できます。この機能により、ファイル共有システムを使用することなく、高可用性 (HA) サポートが提供されます。
このタスクについて
WebSphere Application Server トランザクション・サービスは、複数のリソースを含む、または複数のサーバー間で分散される、各グローバル・トランザクションのトランザクション・ログに情報を書き込みます。これらのトランザクションは、アプリケーションによって、もしくはそのトランザクションがデプロイされているコンテナーによって、開始または停止されます。トランザクション・サービスは、トランザクションの保全性を確保するため、トランザクション・ログを保持します。トランザクション・ログには、分散トランザクションの準備フェーズで情報が書き込まれます。 アクティブなトランザクションがある WebSphere Application Server が障害の後に再始動された場合、トランザクション・サービスはログを使用して未確定のトランザクションをすべて再生できます。 この水準の完全性により、システム全体を整合した状態に戻すことが可能になります。
WebSphere Application Server の以前のリリースでは、トランザクション・ログは、オペレーティング・システム・ファイルとして保管されています。 WebSphere Application Server バージョン 8.5.5 以降では、このセットアップがデフォルト構成のままです。リレーショナル・データベースへのトランザクション・ログの保管を選択することもできます。この構成オプションは、主に高可用性 (HA) 環境に使用されます。また、前のリリースの WebSphere Application Server では、HA トランザクションのサポートのために、トランザクション・ログをホストするために共有ファイル・システム (NFSv4 でマウントされた Network Attached Storage (NAS) やストレージ・エリア・ネットワーク (SAN) など) を使用する必要がありました。この新機能により、特に HA データベース・テクノロジーに投資しているユーザーは、共有ファイル・システムを使用する代わりに、 HA データベースをトランザクション・ログ用の共有リポジトリーとして使用できるようになります。
現行の実装では、コア・リカバリー・ログ機能で予期しない JDBC 例外が発生した場合はトランザクション・ログの記録は使用不可にされ、 未完了トランザクションを復旧できるようにサーバーのシャットダウンが必要です。サーバーが再始動されるまでは再接続は試行されず、 現行の実装では、状態が一過性かどうかを判別するための試行は行われません。
WebSphere Application Server バージョン 8.5.5 以降では、同じく HA 環境で作業するお客様向けに用意された同様の機能を使用して、リレーショナル・データベースに補正リカバリー・ログを保管できます。WebSphere Application Server 補正サービスにより、まったく異なるシステムにあるアプリケーションが、アトミック・トランザクションではなくもっと疎結合のアクティビティーを調整できます。このサービスは、 システム障害の後で補正を実行するために必要な情報を専用リカバリー・ログに保管します。

(2 * the number of potential servers being peer recovered) + 2
この最大プール・サイズは、すべての関連トランザクション・ログをクローズするのに十分な数のデータベース接続に対応できます。最大プール・サイズがこの値に設定されていないと、
使用可能な接続が十分でないため、エラー・メッセージ J2CA0045E が出されることがあります。gotcha手順
- AppClusterMember1
- AppClusterMember2
- AppClusterMember3
- AppClusterMember4
- App1 (AppClusterMember1 用)
- App2 (AppClusterMember2 用)
- App3 (AppClusterMember3 用)
- App4 (AppClusterMember4 用)
以下のステップを実行します。
例
クラスター名 | サーバー名 | トランザクション・ログ表 | 補正ログ表 |
---|---|---|---|
AppCluster | AppClusterMember1 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App1 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App1 |
AppClusterMember2 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App2 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App2 | |
AppClusterMember3 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App3 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App3 | |
AppClusterMember4 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App4 | custom://com.ibm.rls.jdbc.SQLRecoveryLog?datasource=jdbc/tranlog,tablesuffix=App4 |
- AppClusterMember1
- AppClusterMember2
- AppClusterMember3
- AppClusterMember4
- WAS_TRAN_LOGApp1
- WAS_TRAN_LOGApp2
- WAS_TRAN_LOGApp3
- WAS_TRAN_LOGApp4
- WAS_PARTNER_LOGApp1
- WAS_PARTNER_LOGApp2
- WAS_PARTNER_LOGApp3
- WAS_PARTNER_LOGApp4
- WAS_COMP_LOGApp1
- WAS_COMP_LOGApp2
- WAS_COMP_LOGApp3
- WAS_COMP_LOGApp4