変更内容
XAインタフェースを利用した埋込みSQLのアプリケーションからのSymfoware/RDBへの接続方式が以下のとおり変更となります。
9.2.0以前:システム内通信
V10.1.0以降:リモートアクセス
非互換
従来の環境では、XAインタフェースを利用した埋込みSQLのアプリケーションからSymfoware/RDBに接続することができません。
対処方法
Symfoware/RDBの設定と、Symfoware/RDBが動作している環境と同じ環境で動作しているInterstage Application Serverの設定を変更する必要があります。
XAインタフェースを利用しているか否かの確認は、以下のInterstage Application Serverのコマンドで行ってください。
otssetrsc -l
コマンドの実行結果としてリソース定義名の一覧が出力された場合、そのシステムでXAインタフェースを利用しているため、Symfoware/RDBとInterstage Application Serverの設定を変更してください。
以下の手順でSymfoware/RDBの設定を変更してください。
システム用の動作環境ファイルのMAX_CONNECT_TCPパラメタの現在値にMAX_CONNECT_SYSパラメタの値を加算してください。
参照
MAX_CONNECT_TCPパラメタの現在値の確認方法は“アプリケーション開発ガイド(共通編)”の“コネクションの動作環境のパラメタ設定情報(一括出力)”を参照してください。
Symfoware/RDBが動作している環境のservicesファイルに、アプリケーションからSymfoware/RDBに接続するためのポート番号を設定してください。
データベース連携サービスに登録されているリソース定義とXAインタフェースを利用しているCORBAアプリケーションについて、以下の設定を行ってください。
環境変数SQLRTENVの設定を追加
クライアント用の動作環境ファイルにSERVER_SPECパラメタを追加
リソース定義に関する設定の変更手順を説明します。
以下のコマンドを実行して、リソース定義名の一覧を取得します。
otssetrsc -l
以下のコマンドを実行して、リソース定義の内容を出力します。
otssetrsc -l -n <リソース定義名>
出力された内容を確認し、環境変数SQLRTENVが設定されていないリソース定義を特定します。
また、以下のオープン文字列に設定されているSQLサーバ名も確認します。SQLサーバ名は、クライアント用の動作環境ファイルの設定時に必要な情報です。
OPENINFO=TO <SQLサーバ名> USER <ユーザ名>/<パスワード>
クライアント用の動作環境ファイルを任意のパスに作成します。
環境変数SQLRTENVが設定されていないリソース定義について、リソース定義の内容を任意のテキストファイルに保存し、最終行に以下の一行を追加します。
ENVIRON SQLRTENV=<手順3で作成したクライアント用の動作環境ファイルの絶対パス>
以下のコマンドを実行してリソース管理プログラムを停止します。
otsstoprsc -n <リソース定義名>
以下のコマンドを実行して、環境変数SQLRTENVの設定をリソース定義へ追加してください。
otssetrsc -o -rf <手順4で修正したリソース定義ファイルの絶対パス>
以下のコマンドを実行してリソース管理プログラムを起動します。
otsstartrsc -n <リソース定義名>
環境変数SQLRTENVで指定したクライアント用の動作環境ファイルに、SERVER_SPECパラメタを追加します。SERVER_SPECパラメタには、以下を設定します。
SERVER_SPEC=(RDB2_TCPまたはRDB2_TCPS,<リソース定義のオープン文字列で指定しているSQLサーバ名>,<リソース定義のオープン文字列で指定しているSQLサーバ名>,localhost,<ポート番号>)
ポート番号には、Symfoware/RDBの設定変更で、servicesファイルに設定したポート番号を指定します。
CORBAアプリケーションに関する設定の変更手順を説明します。
以下のコマンドを実行して、インプリメンテーションリポジトリに登録されているサーバアプリケーションのインプリメンテーションリポジトリIDの一覧を取得します。
OD_impl_inst -p
以下のコマンドを実行して、インプリメンテーションリポジトリに登録されているサーバアプリケーションの情報を出力します。
OD_impl_inst -p -r <インプリメンテーションリポジトリID>
出力された内容を確認し、XAインタフェースを利用しているCORBAアプリケーションを特定します。XAインタフェースを利用しているCORBAアプリケーションの場合には、以下のように、リソースの設定に関する情報が出力されています。
data = "RESOURCE:[RM名:]<リソース定義名>"
以下のコマンドを実行して、定義登録済みのワークユニット名の一覧を取得します。
islistwudef
以下のコマンドを実行して、ワークユニットの情報を出力します。
isinfwudef <ワークユニット名>
出力された内容を確認し、CORBAアプリケーションが配備されているワークユニットを特定します。CORBAアプリケーションが配備されているワークユニットの場合には、以下のように、CORBAアプリケーションのインプリメンテーションリポジトリIDが出力されています。
Impl ID:<該当のCORBAアプリケーションのインプリメンテーションリポジトリID>
以下のコマンドを実行してワークユニットを停止します。
isstopwu <ワークユニット名>
以下のコマンドを実行してワークユニット定義を表示します。 [Control Option]セクション、または、[Application Program]セクションのEnvironment Variableに記載されている“環境変数”を確認し、環境変数にSQLRTENVが設定されていないCORBAアプリケーションを特定します。
isinfwudef <ワークユニット名>
クライアント用の動作環境ファイルを任意のパスに作成します。
以下のコマンドを実行してワークユニット定義をファイルに出力します。
isinfwudef <ワークユニット名><ワークユニット名>.txt
手順2で出力したワークユニット定義ファイルの[Control Option]セクション、または、[Application Program]セクションのEnvironment Variableに以下を追加します。
SQLRTENV=<手順1で作成したクライアント用の動作環境ファイルの絶対パス>
以下のコマンドを実行してワークユニット定義を更新します。
isaddwudef -o <手順3で修正したワークユニット定義ファイルの絶対パス>
停止していたワークユニットを下のコマンドを実行してワークユニットを起動します。
isstartwu <ワークユニット名>
環境変数SQLRTENVで指定したクライアント用の動作環境ファイルに、SERVER_SPECパラメタを追加します。SERVER_SPECパラメタには、以下を設定します。
SERVER_SPEC=(RDB2_TCPまたはRDB2_TCPS,<該当のCORBAアプリケーションに設定されているリソース定義のオープン文字列で指定しているSQLサーバ名>,<該当のCORBAアプリケーションに設定されているリソース定義のオープン文字列で指定しているSQLサーバ名>,localhost,<ポート番号>)
ポート番号には、Symfoware/RDBの設定変更で、servicesファイルに設定したポート番号を指定します。
CORBAアプリケーションに設定されているリソース定義のオープン文字列は、リソース定義の中で以下の形式で記述されています。
OPENINFO=<オープン文字列>