Oracle RAC による 2 フェーズ・コミット分散トランザクションの構成

Oracle 10g 用の Real Application Cluster (RAC) 構成では、 複数の Oracle RAC ノードにわたる 2 フェーズ・コミット分散トランザクションを Oracle がリカバリーするときに、 トランザクション・マネージャーに関して固有の問題が発生します。1 つのノードが失敗して、 失敗したノードに必要なリカバリー・アクションを Oracle RAC が完了する前に、Oracle が業務用の他の生存ノードを開いた場合に、 問題が発生することがあります。アプリケーション・サーバーでトランザクション・アフィニティーを維持する機能を使用すると、 この問題を回避することができます。

このタスクについて

以前にアクティブであったが後に失敗した RAC ノードを介して、 リカバリー・プロセスでトランザクション・ブランチのコミットまたはロールバックが試行された場合に、 エラーが発生することがあります。トランザクション・マネージャーは、 以下の例外を受け取ります。
ORA- 24756: トランザクションが存在しません。
このエラーが 発生した場合、Oracle データベース管理者が、 ロールバックまたはコミット・プロセスを強制することによって、未確定トランザクションを 手動で解決する必要が生じることがあります。ただし、手操作による介入を希望しない場合は、 トランザクションのリカバリーのために、自動で透過的なストラテジーを構成することができます。
未確定 トランザクションが解決しない場合、後続のトランザクションは、 以下の例外を受け取ります。
ORA-01591 インダウト分散トランザクションがロックを保持しています。
この結果、 データベースの一部は使用できなくなります。

複数の RAC ノードにわたる 複数のトランザクション・ブランチに及ぶグローバル・トランザクションの可能性を除去することが、透過的な リカバリー・ストラテジーの鍵になります。 トランザクション・ブランチは、グローバル・トランザクションに登録されている データベース接続に対応しています。グローバル 2 フェーズ・コミット・トランザクションのすべての接続が 同じノードから作成されている場合は、トランザクション・リカバリーの問題は発生しません。 2 フェーズ・トランザクションでのエラーを防止するように、アプリケーション・サーバーで Oracle RAC を 構成します。

アプリケーション・サーバーでは、着信接続用の トランザクション・アフィニティーが維持されるので、この機能を使用して、 2 フェーズ・コミット・トランザクションでの Oracle RAC 用の自動リカバリーを構成できます。 この構成を実装すると、特定のアプリケーション・サーバーからの接続はすべて同じ Oracle ノードで受信され、 接続は同じノードで完了されます。この構成では、 トランザクションが複数のノードにわたる状況は回避されるため、 1 つ以上の Oracle ノードがダウンしても、リカバリーの問題は発生しません。

手順

タスクの結果

自動リカバリー・ストラテジーを構成した場合、DTP サービスは、 優先インスタンスで自動的に開始されます。ただし、 データベースが再始動される場合は、DTP サービスは自動的には開始されません。次のコマンドを 使用すると、DTP サービスを開始できます。
srvctl start service -d  -s
RAC ノード が動作を停止した場合は、Oracle RAC のクリーンアップおよびリカバリーが完了するまで、 Oracle は DTP サービスをフェイルオーバーしません。 Oracle ノードが再び稼働しても、 Oracle DTP サービスは、新しく再始動された RAC ノードには戻りません。代わりに、 再始動された RAC ノードに手動でサービスを移動する必要があります。

Oracle サービスで DTP を 構成すると、Oracle JDBC プロバイダーからアプリケーション・サーバーにロード・バランシングを 転送することになります。ワークロードの分散は、 Oracle ではなく、アプリケーション・サーバーによって行われます。 これは、ロード・バランシングを実装しない、1 つの 1 次ノードのみを使用するサービスを作成したからです。この構成によって、 トランザクション・プロセスが複数の RAC ノードにわたる状況は回避され、 1 つ以上の RAC ノードが失敗したときに発生する可能性のあるリカバリー問題が軽減されます。


トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdat_oracleractwophase
ファイル名:tdat_oracleractwophase.html