Liberty: データベース・トランザクションをリカバリーする方法

Liberty のトランザクション・マネージャーは、未確定データベース・トランザクションをリカバリーするとき、固有 ID または JNDI 名を使用して現在の dataSource エレメントを見つけて、リカバリーに使用するユーザー ID とパスワードを決定します。

server.xml 構成ファイルで dataSource エレメントの属性を指定して、データ・ソースを構成します。次のようにして、データ・ソースに固有 ID または jndiName 属性を割り当てます。

 <dataSource id="ds1" jndiName="jdbc/ds1"... />

データ・ソースが参加しているトランザクションのリカバリーが処理中の場合は、 id 属性または jndiName 属性の値を変更しないでください。 dataSource エレメントの他の属性を変更した場合、それらの変更はリカバリー用に保持されます。したがって、例えば、リカバリーに使用するデータベース・ユーザー ID とパスワードを指定する recoveryAuthDataRef 属性を追加することもできます。

リカバリーに使用するデータベース・ユーザー ID とパスワードは、次の優先順位に従って決定されます。
  1. dataSource エレメントに recoveryAuthDataRef 属性が定義されている場合、 authData エレメントのユーザー ID とパスワードが使用されます。 以下に例を示します。
    <authData id="recoveryAuth" user="dbuser1" password="{xor}Oz0vKDtu"/>
    <dataSource id="ds1" jndiName="jdbc/ds1" jdbcDriverRef="DB2" 
                recoveryAuthDataRef="recoveryAuth" .../>
  2. コンテナー管理認証が使用されている場合は、コンテナー管理認証別名のユーザー ID とパスワードが使用されます。以下に例を示します。
    • ibm-web-bnd.xml ファイルに以下のコードがあります。
      <resource-ref name="jdbc/ds1ref" binding-name="jdbc/ds1">
          <authentication-alias name="user1Auth"/>
       </resource-ref>
    • server.xml ファイルで以下のコードを定義する必要があります。
      <authData id="user1Auth" user="dbuser1" password="{xor}Oz0vKDtu"/>
      <dataSource id="ds1" jndiName="jdbc/ds1" jdbcDriverRef="DB2" .../>
  3. dataSource エレメントのユーザー ID とパスワードが使用されます。以下に例を示します。
    <dataSource id="ds1" jndiName="jdbc/ds1" jdbcDriverRef="DB2" ...>
         <properties.db2.jcc databaseName="testdb" user="dbuser1" password="{xor}Oz0vKDtu"/>
    </dataSource>
  4. 上記の条件がいずれも満たされず、ユーザー ID とパスワードなしでリカバリーが試行された場合、JDBC ドライバーおよびデータベースによって動作が決まります。
注: アプリケーション定義のデータ・ソース (@DataSourceDefinition アノテーション、 またはデプロイメント記述子内の <data-source> エレメントなど) によってトランザクション・リカバリーが実行される場合は、関連アプリケーションが、リカバリーの実行中に必ず稼働しているようにしてください。server.xml ファイル内の構成設定を使用してアプリケーション定義のデータ・ソースをリカバリーすることはできません。

トピックのタイプを示すアイコン 参照トピック



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