制約事項: 本トピックは Windows 環境にのみ該当します。
SQL Server XAR の定義を完了するには、[Open string] フィールドに次の値を追加します。
DSN=odbc_dsn[,USRPASS=userid.password][,TM=tmname]
[,RMRECOVERYGUID=guid][,TIMEOUT=timeoutvalue]
[,USERP={T|F}][,BATCHONLY={T|F}][,LOCALTX={T|F}]
[,ISOLEVEL={CR|RR|SS|SZ|UR}][,ESLOGGING=0001]
- odbc_dsn
- Windows ODBC Data Source Administrator ユーティリティ内で定義されたデータ ソースへの接続に使用する ODBC データ ソース名。1
- userid
- データ ソースに接続するために必要なユーザー ID。1
- password
- ユーザー ID をデータ ソースに接続するために必要なパスワード。1
- tmname
- Microsoft 分散トランザクション コーディネーター (MSDTC) によって診断に使用されるトランザクション マネージャー名。ホスト マシンおよび エンタープライズ サーバー インスタンス を一意に識別する文字列としてトランザクション マネージャー名を指定することをお勧めします。tmname の値は、40 文字に制限されています。指定されていない場合、デフォルトの Micro Focus Enterprise Server に設定されます。
- guid
- 回復処理の最適化に使用される 36 文字の GUID。
- timeoutvalue
- トランザクションの完了を MSDTC が待機する時間 (ミリ秒単位)。指定されていない場合、時間制限がないことを意味するデフォルトの 0 に設定されます。
- USERP、BATCHONLY、LOCALTX、ISOLEVEL、および ESLOGGING
- 詳細については、「SQL の xa_open 文字列構成オプション」を参照してください。
1 別の方法として、DSN、ユーザー ID、およびパスワードを、手動で esmssql.cbl ソースにコーディングすることによって指定することもできます。これは、セキュリティを緩和する場合に役立ちます。これを行うには、esmssql.cbl 内の CUSTOMIZE を検索して、必要な変更をどこに適用するのかを確認します。 |
注:
- ここに記載されている以外のパラメーターを指定すると、スイッチ モジュールから Enterprise Server にエラーが返されます。
- SQL Server スイッチ モジュールは、DTCSERVER パラメーターを受け付けません。したがって、リソース マネージャーを定義して、XAR でトランザクション コーディネーターとして機能するように特定のマシンを指定することはできません。ただし、Windows コンポーネント サービスを使用して、トランザクション コーディネーターとして機能するようにリモート マシンを構成できます。これを行うには、ローカル マシンで、リモート マシンのコンピューター名をリモート コーディネーターのホスト名として指定して、リモート コーディネーターを使用するようにデフォルトの MSDTC プロパティを変更します。詳しい手順については、Windows のドキュメントを参照してください。
XA リソース マネージャーとして機能するように MSDTC および SQL Server を構成する方法
- Windows コンポーネント サービス管理ツールを起動します。
- [コンポーネント サービス > コンピューター > マイ コンピューター > 分散トランザクション コーディネーター > ローカル DTC] の [プロパティ] ページを開きます。
- [セキュリティ] タブで、[XA トランザクションを有効にする] をオンにします。
トランザクション コーディネーターとして機能するようにリモート マシンを構成する方法
リモート マシンをトランザクション コーディネーターとして使用すると、Enterprise Server および SQL Server が同じマシン上でリソースについて競合することがなくなるため、パフォーマンスを向上できます。トランザクション コーディネーターとして機能するようにリモート マシンを構成するには:
- ホスト マシンで、Windows コンポーネント サービス管理ツールを起動します。
- [コンポーネント サービス > コンピューター > マイ コンピューター] の [プロパティ] ページを開きます。
- [MSDTC] タブで、[ローカル コーディネーターを使用する] をオフにします。
- [リモート コーディネーターのホスト名] フィールドで、トランザクション コーディネーターとして機能するようにするマシンのコンピューター名または IP アドレスを入力するか、[選択] をクリックしてマシンを選択します。