![]() ![]() ![]() ![]() ![]() ![]() |
DB2 Connectを使用するメインフレームで実行されているDB2へのTuxedo XA接続の構成を開始する前に、次の作業が必要です。
この項では、オープン・システム上でDB2 Connectを構成して、メインフレーム上で実行されているDB2サーバーに接続するために必要な手順を説明します。これらの手順は、必要なシステム権限と特別な専門知識を持っているユーザー(ネットワーク管理者やシステム管理者、またはDB2管理者など)が実行する必要があります。
この章では、db2icrtを使用して、メインフレーム上にあるデータベースに接続するために使用されるDB2インスタンスを作成する方法を説明します。db2icrtコマンドは、インスタンス所有者のホーム・ディレクトリにDB2インスタンスを作成します。
注意: | LinuxおよびUNIXオペレーティング・システム上にDB2データベース製品をルート以外でインストールした場合は、DB2 DB2ICRT コマンドを使用できません。 |
LinuxまたはUNIXオペレーティング・システム上では、このユーティリティはDB2DIR/instance
ディレクトリにありますが、ここでDB2DIRはDB2 Connectがインストールされている場所を表します。Windowsオペレーティング・システム上では、このユーティリティはDB2PATH\binディレクトリにありますが、ここでDB2PATHはDB2 Connectがインストールされている場所です。
-h | -?
-d
-a AuthType
-p PortName
-s InstType
-u Fenced ID
InstName
この項では、CATALOGコマンドを使用して、メインフレームにあるDB2サーバーへの接続をセットアップする方法を説明します。グラフィック・ユーザー・インタフェース・ツールであるDB2 Client Configuration Assistant (CCA)をかわりに使用することもできますが、この項では説明しません
DB2は、DB2が制御するデータに関する情報が記載されている一連の表を維持しています。これらの表は、カタログと総称されます。
カタログ表には、DB2オブジェクト(表、ビューおよび索引など)に関する情報が含まれます。オブジェクトを作成、変更または削除する場合、DB2は、そのオブジェクトを記述しているカタログの行を、挿入、更新または削除します。
DB2カタログは、表スペース、索引、表、表スペースと索引のコピー、および記憶域グループなど、DB2システムに対して定義されるすべてのものに関するデータの表から構成されています。DB2カタログは、システム・データベースDSNDB06に含まれています。
次に、CATALOG TCP/IP NODE
、CATALOG DCS DATABASE
およびCATALOG DATABASE
の各手順を1つずつ使用して、接続セットアップを完了します。
CATALOG TCP/IP NODE
コマンドの構文は、次のとおりです。
catalog [ ADMIN ] [ TCP/IP protocol ] node [ Node-name ] remote [ Hostname ] server [ Service-name ] with [ comment-string ]
db2 catalog tcpip node wasa-host remote wasa server 4001 with "catalog remote host wasa:4001 to local alias wasa-host"
CATALOG TCP/IP NODE
は、次のパラメータをとります。
ADMIN
TCP/IP Protocol
Node-name
Hostname
Service-name
このコマンドは、リモート・ホスト(z/OSまたはOS/390)またはiSeries (OS/400)データベースに関する情報を、Database Connection Services (DCS)ディレクトリに格納します。これらのデータベースには、DB2 ConnectなどのApplication Requester (AR)を介してアクセスします。システム・データベース・ディレクトリのデータベース名と一致するデータベース名を持つDCSディレクトリ・エントリがあると、指定されたARが起動し、データベースが存在するリモート・サーバーにSQLリクエストを転送します。
注意: | UNIX、Linuxなどの汎用システム上に存在するデータにアクセスする必要がある場合、CATALOG DATABASE だけを使用できる可能性があります。 |
CATALOG DCS DATABASE
コマンドの構文は、次のとおりです。
catalog dcs database [ Database-name ]
as [ Target-database-name ]
with [comment-string ]
db2 catalog dcs database db2wasa
as qwa1
with "catalog the remote host
database qwa1 to local db2wasa"
CATALOG DCS DATABASE
は、次のパラメータをとります。
このコマンドは、データベースの場所情報をシステム・データベース・ディレクトリに格納します。データベースは、ローカル・ワークステーションまたはリモート・データベース・パーティション・サーバー上にあります。
注意: | ローカルまたはリモートの汎用システム(UNIX、Linuxなど)にあるデータにアクセスする必要がある場合、それを使用できる可能性があります。 |
DB2 CATALOG DATABASE
コマンドの構文は、次のとおりです。
catalog database [ Database-name ] as [ Alias ] at node [ Node-name ] authentication [ Authentication-type ] with [ comment-string ]
db2 catalog database db2wasa at node wasa-host authentication dcs with "catalog the local db2wasa with dcs authentication type"
DB2 CATALOG DATABASE
は、次のパラメータをとります。
Database-name
Alias
Node-name
Authentication-type
CATALOGのすべての手順の後、一部のデータベース・マネージャ構成を更新して、DB2 Connectを起動する必要があります。
次に、DB2 Connectを使用してメインフレームに存在するデータベースにアクセスするためにOracle Tuxedoを構成するプロセスについて説明します。Tuxedoが、DB2 Databaseの64ビットのインスタンスとともに動作しているか、32ビットのインスタンスとともに動作しているかにより、いくつかの相違点が、あります。
DB2INSTANCE
環境変数を設定します。PATH変数を設定してDB2 Connectディレクトリをインクルードします。DB2データベースに接続できるユーザーIDとパスワードを確認します。次に例を示します。 export DB2INSTANCE=db2art
export DB2DIR=/opt/ibm/db2_connect/V9.1
値をTUXEDOにしてtp_mon_nameデータベース・マネージャ構成パラメータを更新します
。このパラメータは、使用されるトランザクション処理(TP)モニター製品の名前を識別します。 有効な値は、CICS
、MQ
、CB
、SF
、TUXDEO
、TOPEND
、WAS
、空白、または他のいくつかの値です。
db2 update dbm cfg using tp_mon_name TUXEDO
注意: | アプリケーションがDB2 for z/OS and OS/390(R)、DB2 for iSeries、またはDB2 for VM&VSEに存在するデータにアクセスする場合、DB2 Connect XAコンセントレータが必要になります。 |
MAX_CONNECTIONS
の値を、デフォルトより大きい任意の数に設定することによって、コンセントレータ機能をアクティブ化できます。MAX_CONNECTIONS
のデフォルト値は、MAX_COORDAGENTS
の値と同等です。各アプリケーションには1つの論理エージェントがあるため、MAX_COORDAGENTS
はいつでもアクティブ化できるインバウンド接続の数を制御し、MAX_CONNECTIONS
はデータベース・インスタンスに接続できるアプリケーションの数を実際に制御します。MAX_CONNECTIONS
は、MAX_COORDAGENTS
から64,000までの範囲の数をとります。論理エージェントのデフォルト数は、MAX_COORDAGENTS
と同等です。
db2 update dbm cfg using max_connections 500
db2 update dbm cfg using max_coordagents 200
$TUXDIR/udataobj/RM
)に、DB2 Connectの定義を追加します。次の例では、UDB_XAはDB2 Connectのローカルに定義済のTuxedoリソース・マネージャ名で、db2xa_switch_std
はタイプxa_switch_t
の構造のための、DB2で定義された名前です。 # DB2 UDB
UDB_XA:db2xa_switch_std:-L${DB2DIR}/lib -ldb2
${TUXDIR}/bin/buildtms -r UDB_XA -o ${TUXDIR}/bin/TMS_UDB
${TUXDIR}/bin/buildserver -r UDB_XA -f svcfile.o -s SVC1,SVC2 -o UDBserver
UDB_GRP LMID=simp GRPNO=3
TMSNAME=TMS_UDB TMSCOUNT=2
OPENINFO="UDB_XA:db=sample,uid=username,pwd=password,tpm=tuxedo"
ここで、TMSNAMEパラメータは、以前に作成したトランザクション・モニター・サーバーを指定し、OPENINFOパラメータはリソース・マネージャ名を指定します。次にデータベース名と、DB2データベース・ユーザーIDおよびパスワードが続いて、認証に使用されます。
以前に作成したアプリケーション・サーバーは、Tuxedo構成ファイルの*SERVERSセクションで参照されます。
この章では、接続の確認とエラー検出のためのすべての必要手順と方法の要約を示します。
db2icrt -a server -u db2art db2art
db2 catalog tcpip node wasa-host remote wasa server 4001
db2 catalog dcs database db2wasa as qwa1
db2 catalog database db2wasa at node wasa-host authentication dcs
db2 update dbm cfg using SVCNAME db2c_db2art
db2 connect to $DB2BASE user user-name using password
Database Connection Information
Database server = DB2 OS/390 9.1.5
SQL authorization ID = BEAUSR1
Local database alias = DB2QWA1
export TUXDIR=/home/db2art/tuxedo11gR1
export DB2DIR=/opt/ibm/db2_connect/V9.1
db2 update dbm cfg using tp_mon_name TUXEDO
db2 update dbm cfg using spm_name bjaix
db2 update dbm cfg using max_connections 500
db2 update dbm cfg using max_coordagents 200
Add "UDB_XA:db2xa_switch_std:-L${DB2DIR}/lib -ldb2" into $TUXDIR/udataobj/RM
${TUXDIR}/bin/buildtms -r UDB_XA -o ${TUXDIR}/bin/TMS_UDB
${TUXDIR}/bin/buildserver -r UDB_XA -f svcfile.o -s SVC1,SVC2 -o UDBserver
Configure OPENINFO in ubbconfig: OPENINFO="UDB_XA:db=sample,uid=username,pwd=password,tpm=tuxedo"
この項では、DB2 Connectを使用する場合に発生する接続の問題の、最も一般的な症状を示します。それぞれの場合につき、次の情報を提供します。
SQL1403N
AUTHENTICATION
SERVER
を使用して不正確にカタログ化されています(AUTHENTICATION
が明示的に指定されていない場合、これがデフォルトです)。この場合、AUTHENTICATION
DCS
またはCLIENT
を使用して、エントリを再カタログ化します。 ターゲット・サーバー・データベースに送信するパスワードを使用できません。システム・データベース・ディレクトリ・エントリがAUTHENTICATION
DCS
を使用してカタログ化されている場合、パスワードは、DB2 Clientからターゲット・サーバー・データベースに流される必要があります。一部のプラットフォーム(たとえばAIX)では、パスワードはCONNECT
文で入力された場合のみ取得できます。
SQL5043N
症状: 1つ以上の通信プロトコルのサポートを正常に開始できませんでした。ただし、コア・データベース・マネージャ機能は、正常に起動しました。
おそらく、TCP/IPプロトコルがDB2 Connectゲートウェイ上で起動されていません。以前には正常にクライアント接続できていた可能性があります。
対処法: この警告は、リモート・クライアントのためのゲートウェイの働きをするDB2 Connectが、1つ以上のクライアント通信プロトコルを処理できないことを示す症状です。そのプロトコルはTCP/IP、APPCなどの可能性がありますが、通常、このメッセージは、DB2 Connectに対して定義されている通信プロトコルの1つが正しく構成されていないことを示しています。
多くの場合、原因は、DB2COMMプロファイル変数が定義されていないか、不正確に定義されていないことです。通常、問題は、DB2COMM変数と、データベース・マネージャ構成で定義される名前(svcname、tpnameなど)の不一致の結果です。
、1つの可能なシナリオは、以前に正常に接続できていて、何も構成を変更していないのに、SQL5043エラー・メッセージが表示される場合です。これは、TCP/IPプロトコルの使用時に、リモート・システムがなんらかの理由で接続を異常に終了した場合に発生する可能性があります。これが発生した場合、クライアント上に接続がまだ存在するように表示され、次に示すコマンドを発行することによって、それ以上の操作をしなくとも接続をリストア可能になる場合があります。
最も可能性が高いのは、ゲートウェイに接続しているクライアントの1つが、まだTCP/IPポート上のハンドルを持っている場合です。各クライアント・マシン上で、それはゲートウェイに接続されます。
SQL30061
SQL30081 with Return Code 79
"connect". Protocol specific error code(s): "79", "*", "*". SQLSTATE=08001
対処法: このエラーは、リモート・クライアントがDB2 Connectゲートウェイへの接続に失敗する場合に発生する可能性があります。DB2 Connectゲートウェイからホストに接続する場合に発生することもあります。 DB2COMMプロファイル変数が、DB2 Connectゲートウェイ上で不正確に設定されていることがあります。確認してください。たとえば、AIX上でDB2 Extended Enterprise Editionを実行する場合、コマンドdb2set db2comm=tcpipが、sqllib/db2profileにある必要があります。 DB2クライアントとDB2 Connectゲートウェイの間で、TCP/IPサービス名やポート番号の指定に不一致がある可能性があります。両方のマシン上で、TCP/IPサービス・ファイルのエントリを検証します。
![]() ![]() ![]() |