ヘッダーをスキップ
Oracle Database Gateway for WebSphere MQインストレーションおよびユーザーズ・ガイド
11gリリース1(11.1)
E05710-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

7 構成

ゲートウェイのインストール後、この章の手順に従いゲートウェイを構成してください。この章の内容は次のとおりです。

7.1 構成の概要

ゲートウェイは、たくさんのコンポーネントおよび製品と連携し、OracleデータベースとWebSphere MQ間で通信します。

7.2 ゲートウェイの構成

ゲートウェイは、ゲートウェイSID、ディレクトリ名、ゲートウェイ・パラメータ設定のデフォルト値を使用して、インストールおよびプリインストールされます。デフォルトSID値は次のとおりです。

基本的なゲートウェイ初期化ファイルもインストールされ、このファイル内の値がインストール・フェーズ中に入力した情報に基づいて設定されます。

7.2.1 デフォルト値でのゲートウェイの使用方法

ゲートウェイ・インスタンスを1つ構成し、どのデフォルト値も変更する必要がない場合、ほとんどのゲートウェイ構成プロセスはOracle Universal Installerによって完了します。この場合、次のアクションを実行してください。

7.2.2 デフォルト値以外でのゲートウェイの使用方法

複数のインスタンスがゲートウェイに構成されている場合またはインストール・フェーズ中に設定したデフォルト値を変更する場合、「デフォルト値の変更」の手順から開始し、章の最後まで進んでください。

7.2.3 デフォルト値の変更

デフォルト値の変更の際、ゲートウェイSIDを選択してゲートウェイ初期化ファイルをカスタマイズしてください。

7.2.3.1 手順1: ゲートウェイのシステムIDの選択

ゲートウェイSIDは、ゲートウェイ・インスタンスを識別する1から64文字の英数文字列です。SIDは、ゲートウェイ・ブート・ファイル内でゲートウェイ・パラメータ・ファイルのファイル名の一部として使用されます。デフォルトSIDではない、dg4mqsおよびdg4mqc以外のSIDを選択してください。

アクセスするそれぞれのキュー・マネージャに、個別のゲートウェイ・インスタンスが必要です。異なる2つのキュー・マネージャにアクセスする場合、ゲートウェイのインスタンスに対して1つずつ、2つのゲートウェイSIDが必要です。キュー・マネージャが1つあり、それにアクセスする際に、ゲートウェイ・パラメータ設定のあるセットを使用するときと、別のゲートウェイ・パラメータ設定を使用するときがある場合、1つのキュー・マネージャに複数のゲートウェイSIDを持つことで可能になります。

7.2.3.2 手順2: ゲートウェイ初期化ファイルのカスタマイズ

ゲートウェイ初期化ファイル(initsid.ora)は、付録C「ゲートウェイ初期化パラメータ」で説明しているすべてのゲートウェイ初期化パラメータをサポートします。ゲートウェイの起動の際、初期化ファイルが使用可能である必要があります。

インストール中、デフォルト初期化ファイルは、siddg4mqsまたはdg4mqcのデフォルトSIDである場合、Microsoft WindowsではORACLE_HOME\dg4mq\admin\initsid.ora、およびUNIXベース・システムでは$ORACLE_HOME/dg4mq/admin/initsid.oraに作成されます。デフォルトではないSIDを選択する場合、「手順1: ゲートウェイのシステムIDの選択」で選択したSIDを使用してこのファイル名を変更してください。必要に応じ、デフォルト初期化ファイルをカスタマイズしてください。

次のエントリが、初期化ファイルに表示されます。

LOG_DESTINATION=log_file
QUEUE_MANAGER=manager_name
AUTHORIZATION_MODEL=auth_model
TRANSACTION_MODEL=tx_model
TRANSACTION_LOG_QUEUE=tx_queue_name
TRANSACTION_RECOVERY_USER=rec_user
TRANSACTION_RECOVERY_PASSWORD=rec_password
TRACE_LEVEL=0
MQSERVER=channel
MQCCSID=character_set

関連項目:

詳細は、『Oracle Database Net Services管理者ガイド』および『Oracle Database Net Servicesリファレンス』を参照してください。

説明:

  • log_fileは、ゲートウェイ・ログ・ファイルのフルパス名を指定します。

  • manager_nameは、アクセスするWebSphere MQの名前です。

  • auth_modelは、使用する認可モデルです。デフォルト値は、RELAXEDです。

  • tx_modelは、使用するトランザクション・モデルです。デフォルト値は、SINGLE_SITEです。

  • tx_queue_nameは、分散トランザクションのロギング・トランザクションIDのキュー名です。これは、tx_modelCOMMIT_CONFIRMに設定されている場合にのみ使用されます。

  • rec_userは、分散トランザクションのリカバリを開始する際にゲートウェイが使用するユーザー名です。これは、auth_modelSTRICTに設定され、tx_modelCOMMIT_CONFIRMに設定されている場合にのみ使用されます。

  • rec_passwordは、分散トランザクションのリカバリを開始する際にゲートウェイが使用するユーザー名のパスワードです。

  • channelは、使用するWebSphere MQサーバーおよび通信メソッドの場所を指定します。チャネル書式は、次のとおりです。

    channel_name/connection_type/hostname [(port_number)]

    次に例を示します。

    MQSERVER=CHAN9/TCP/dolphin(1425)
    
  • character_setは、WebSphere MQキュー・マネージャとの通信の際にゲートウェイが使用するコード化したキャラクタ・セット番号を指定します。これは、オプションのパラメータです。

    このパラメータは、WebSphere MQキュー・マネージャを実行中のシステムが、ゲートウェイを実行するシステムとは別のコード体系を使用する場合にのみ設定されます。設定されると、character_setの値は、ゲートウェイ・システム上でデータを変換するために、WebSphere MQクライアント・ソフトウェアで使用されます。

トランザクションおよびセキュリティ・モデルの詳細は、第8章「ゲートウェイ実行環境」を参照してください。


関連項目:

詳細は、『Oracle Database Net Services管理者ガイド』および『Oracle Database Net Servicesリファレンス』を参照してください。

7.3 ゲートウェイへのOracle Netの構成

ゲートウェイには、Oracleデータベースへ、またはOracleデータベースからの透過的データ・アクセスを提供するために、Oracle Netが必要です。Oracle Netは、Oracle Net Listenerを使用して、Oracle Netクライアントからの受信接続を受信します。ゲートウェイの場合、Oracle Net Listenerは、Oracleデータベースからの受信リクエストをリスニングします。Oracle Net Listenerでゲートウェイをリスニングするには、ゲートウェイに関する情報をOracle Net Listner構成ファイルlistener.ora)に追加する必要があります。ゲートウェイがインストールされたディレクトリがORACLE_HOMEの場合、Microsoft WindowsではORACLE_HOME/network/adminディレクトリおよびUNIXベース・システムではORACLE_HOME\network\adminディレクトリに、このファイルがあります。このファイルのデフォルト値は、Oracle Universal Installerによるインストール・プロセスの際に設定されます。

7.3.1 デフォルト・ゲートウェイ値でのOracle Netの使用

ゲートウェイ・インスタンスを1つ構成し、どのデフォルト値も変更する必要がない場合、Oracle Netをさらに構成する必要はありません。「手順2: ゲートウェイのOracle Net Listenerの停止および起動」のみを実行してください。

7.3.2 デフォルト・ゲートウェイ値を変更した場合のOracle Netの使用

Oracle Net Listenerを複数のゲートウェイ・インスタンスで使用する、またはインストール・フェーズで設定したデフォルト値のいくつかを変更する必要がある場合、この項の手順1および手順2を実行してください。

手順1では、Microsoft WindowsではORACLE_HOME\network\adminおよびUNIXベース・システムではORACLE_HOME/network/adminにあるゲートウェイ・ディレクトリ内のlistener.oraのゲートウェイ情報を追加またはデフォルト情報を変更します。

7.3.2.1 手順1: Oracle Net Oracle Net Listenerのゲートウェイへの構成

2つのエントリをlistener.oraファイルに追加する必要があります。

  • Oracle Net ListenerがリスニングするOracle Netアドレスのリスト

  • 受信接続リクエストに応答してOracle Net Listenerが開始するゲートウェイ・プロセス


    注意:

    Oracle Net Listenerおよびゲートウェイは、同一のノードにある必要があります。ノードでOracle Net Listenerをすでに実行中の場合、手順1および手順2で示すように既存のlistener.oraおよびtnsnames.oraファイルを変更する必要があります。

    変更後、lsnrctlユーティリティ内のreloadサブ・コマンドを実行すると、Oracle Net Listenerを停止せずに変更をリロードできます。


Oracle Net ListenerのOracle Netアドレスの指定

Oracle NetおよびTCP/IPプロトコル・アダプタを使用する場合、listener.oraファイルのエントリの構文は次のとおりです。

LISTENER=
  (ADDRESS_LIST=
      (ADDRESS=
          (PROTOCOL=TCP)
          (HOST=host_name)
          (PORT=port_number)
       )
  )

説明:

  • host_nameは、ゲートウェイがインストールされているシステムの名前です。

  • port_numberは、Oracle Net Listenerで使用するIPポート番号を指定します。同一システム上のOracleデータベースのリスナーなど、host_name上で実行中の別のリスナーがある場合、port_numberはそのリスナーのポート番号と異なっている必要があります。

Oracle Netおよびプロセス間ソケット・コール(ICP)・プロトコル・アダプタを使用する場合、listener.oraファイルのエントリの構文は次のとおりです。

LISTENER=
  (ADDRESS_LIST=
     (ADDRESS=
         (PROTOCOL=IPC)
         (KEY=key_name)
     )
   )

説明:

  • IPCは、接続に使用するプロトコルをIPCに指定します。

  • key_nameは、ユーザー定義の一意のサービス名です。

ゲートウェイのエントリ

Oracle Net Listenerを構成して受信接続リクエストのゲートウェイ・インスタンスをリスニングするには、次の構文を使用してlistener.oraファイルにエントリを追加してください。

SID_LIST_LISTENER=
   (SID_LIST=
      (SID_DESC=
          (SID_NAME=gateway_sid)
          (ORACLE_HOME=gateway_directory)
          (PROGRAM=driver)
       )
    )

説明:

  • gateway_sidは、ゲートウェイのSIDを指定し、tnsnames.oraファイル内の接続記述子エントリで指定されたゲートウェイIDと一致させます。「Oracle DatabaseのためのOracle Netの構成」を参照してください。

  • gateway_directoryは、ゲートウェイ・ソフトウェアがあるゲートウェイ・ディレクトリを指定します。

  • driverは、ゲートウェイ実行可能ファイルの名前です。ゲートウェイがローカルWebSphere MQサーバーを使用する場合、このファイル名はdg4mqsです。ゲートウェイをWebSphere MQクライアントとして実行しリモートWebSphere MQサーバーにアクセスする場合、このファイル名はdg4mqcです。

複数のゲートウェイ・インスタンスにエントリを追加する場合、既存のSID_LIST構文にエントリを追加してください。

SID_LIST_LISTENER=
 (SID_LIST=
      (SID_DESC=.
                .
                .
      )
      (SID_DESC=.
                .
                .
      )
      (SID_DESC=
          (SID_NAME=gateway_sid)
          (ORACLE_HOME=gateway_directory)
          (PROGRAM=driver)
       )
  )

次に、listener.oraファイルに追加するエントリの例を示します。

Microsoft Windowsの場合:

(SID_DESC =
         (SID_NAME=dg4mqs)
         (ORACLE_HOME=gateway_directory)
         (PROGRAM=dg4mqs)
)

UNIXベース・システムの場合:

(SID_DESC =
         (SID_NAME=dg4mqs)
         (ORACLE_HOME=/oracle/app/oracle/product/dg4mq)
         (PROGRAM=dg4mqs)
)

関連項目:

listener.oraの変更に関する詳細は、『Oracle Database Net Services管理者ガイド』および『Oracle Database Net Servicesリファレンス』を参照してください。

7.3.2.2 手順2: ゲートウェイのOracle Net Listenerの停止および起動

新しい設定を初期化するには、Oracle Net Listenerを起動またはリロードする必要があります。


注意:

ゲートウェイがインストールされているOracleデータベース上で、Oracle Net Listenerをすでに実行中の場合、既存のlistener.oraおよびtnsnames.oraファイルを変更する必要があります。変更後、lsnrctlユーティリティ内のreloadサブ・コマンドを実行すると、Oracle Net Listenerを停止せずに変更をリロードできます。

「手順1: Oracle Net Oracle Net Listenerのゲートウェイへの構成」の注意を参照してください。


  • ゲートウェイ・ディレクトリ名を設定します。

    Microsoft Windowsの場合:

    set TNS_ADMIN=c:\orant\network\admin
    

    BourneまたはKornシェルを使用している場合、次のように入力します。

    $ ORACLE_HOME=gateway_directory;export ORACLE_HOME
    

    Cシェルを使用している場合、次のように入力します。

    $ setenv ORACLE_HOME gateway_directory
    

    説明:

    gateway_directoryは、ゲートウェイ・ソフトウェアがインストールされているディレクトリを指定します。

  • リスナーがすでに実行中の場合、lsnrctlコマンドを使用してリスナーを新しい設定でリロードします。

    Microsoft Windowsの場合:

    c:\orant\bin> lsnrctl reload your_listener_name
    

    UNIXベース・システムの場合:

    $ cd $ORACLE_HOME/bin
    $ ./lsnrctl reload your_listener_name
    

    説明:

    ORACLE_HOMEは、ゲートウェイ・ソフトウェアがインストールされているディレクトリを指定します。

  • 新しい設定のリスナーのステータスを確認します。

    Microsoft Windowsの場合:

    c:\orant\bin> lsnrctl status your_listener_name
    

    UNIXベース・システムの場合:

    $ ./lsnrctl status listener_name
    

    次に、lsnrctlステータス・チェックの出力の例を示します。

Microsoft Windowsの場合:

Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=ORAIPC))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for MS Windows: version 11.1.0.6.0 - Production
Start Date                21-AUG-04 18:16:10
Uptime                    0 days 0 hr. 2 min. 19 sec
Trace Level               off
Security                  OFF
SNMP                      OFF
Listener Parameter File   oracle\app\oracle\product\dg4mqs\network\admin\listener.ora
Listener Log File         \oracle\app\oracle\product\dg4mqs\network\log\listener.log
Services Summary...
  dg4mqs            has 1 service handler(s)
The command completed successfully

UNIXベース・システムの場合:

Connecting to (ADDRESS=(PROTOCOL=IPC)(KEY=ORAIPC))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Solaris: version 11.1.0 - Production
Start Date                21-AUG-04 18:16:10
Uptime                    0 days 0 hr. 2 min. 19 sec
Trace Level               off
Security                  OFF
SNMP                      OFF
Listener Parameter File   /oracle/app/oracle/product/dg4mqs/network/admin/listener.ora
Listener Log File         /oracle/app/oracle/product/dg4mqs/network/log/listener.log
Services Summary...
  dg4mqs            has 1 service handler(s)
The command completed successfully

例では、dg4mqsがインストール中に割り当てられたデフォルトSID値です。いずれかの有効なIDをSIDに使用するか、デフォルトを維持してください。


注意:

構成される各ゲートウェイ・インスタンスに対して、tnsnames.oraファイル、listener.oraファイルおよびゲートウェイ初期化ファイルのGATEWAY_SID環境変数で同じSID値を使用する必要があります。

7.4 OracleデータベースへのOracle Netの構成

Oracleデータベースにアクセスを持つOracleアプリケーションは、ゲートウェイを通じてWebSphere MQにアクセスできます。ゲートウェイを使用してWebSphere MQにアクセスする前に、Oracleデータベースを構成し、Oracle Netを使用してゲートウェイと通信できるようにする必要があります。サーバーを構成するには、接続記述子をtnsnames.oraファイルに追加します。

ゲートウェイにアクセスするOracleデータベースでは、Oracleデータベースに接続方法を告げるため、Oracleデータベースにサーバー上のtnsnames.oraファイル内に、サービス名エントリまたは接続記述子名エントリが必要です。デフォルトでは、OracleデータベースがインストールされたディレクトリがORACLE_HOMEの場合、Microsoft WindowsではORACLE_HOME/network/adminディレクトリおよびUNIXベース・システムではORACLE_HOME\network\adminディレクトリに、このファイルがあります。tnsnames.oraファイルがゲートウェイにアクセスするOracle Databaseに必要ですが、ゲートウェイには必要ありません。「構成の概要」および「ゲートウェイの構成」を参照してください。


関連項目:

tnsnames.oraの変更に関する詳細は、『Oracle Database Net Services管理者ガイド』および『Oracle Database Net Servicesリファレンス』を参照してください。

7.4.1 デフォルト・ゲートウェイ値の使用

ゲートウェイ・ソフトウェアがインストールされたディレクトリがORACLE_HOMEの場合、Microsoft WindowsではORACLE_HOME/network/adminディレクトリおよびUNIXベース・システムではORACLE_HOME\network\adminディレクトリに、Oracle Universal Installerはtnsnames.oraファイルを作成し事前構成します。デフォルト値を使用する場合、および追加のゲートウェイ・インスタンスを構成する必要がない場合、ゲートウェイにアクセスする各Oracleデータベースのtnsnames.oraファイルにこのファイルの内容を追加できます。

7.4.2 デフォルト・ゲートウェイ値の変更

いくつかのデフォルト設定を変更する必要がある場合、この項で説明する例を使用してください。

7.4.2.1 TCP/IPの例

Oracleデータベースは、Oracle NetおよびTCP/IPプロトコル・アダプタを使用してゲートウェイにアクセスします。tnsnames.ora内の接続記述子エントリの構文は次のとおりです。

tns_name_entry=
  (DESCRIPTION=
     (ADDRESS=
          (PROTOCOL=TCP)
          (HOST=host_name)
          (PORT=port_number)
     )
     (CONNECT_DATA=
     (SID=gateway_sid)
     )
     (HS=OK)
)

説明:

  • tns_name_entryは、CREATE DATABASE LINK文のtns_name_entryです。詳細は、「データベース・リンクの作成」を参照してください。

  • TCP/IPは、接続に使用するプロトコルをTCP/IPに指定します。

  • port_numberは、ゲートウェイをリスニングするOracle Net Oracle Net Listenerで使用するポート番号です。この番号は、Oracle Net Listenerで使用するlistener.oraファイルにあります。「Oracle Net ListenerのOracle Netアドレスの指定」を参照してください。

  • host_nameは、ゲートウェイ・ソフトウェアを実行中のシステムを指定します。Oracle Net Listenerホスト名は、ゲートウェイをリスニングするOracle Net Listenerで使用するlistener.oraファイルにあります。「Oracle Net ListenerのOracle Netアドレスの指定」を参照してください。

  • gateway_sidは、ゲートウェイのSIDを指定し、ゲートウェイをリスニングするOracle Net Listenerのlistener.oraファイル内で指定されたSIDと一致させます。

7.4.2.2 IPCの例

Oracleデータベースは、Oracle NetおよびIPCプロトコル・アダプタを使用してゲートウェイにアクセスします。tnsnames.ora内の接続記述子エントリの構文は次のとおりです。

tns_name_entry=
    (DESCRIPTION=
        (ADDRESS=
        (PROTOCOL=IPC)
        (KEY=key_name)
    )
    (CONNECT_DATA=
        (SID=gateway_sid)
    )
     (HS=OK)
  )

説明:

  • tns_name_entryは、CREATE DATABASE LINK文のtns_name_entryです。詳細は、「データベース・リンクの作成」を参照してください。

  • IPCは、接続に使用するプロトコルをIPCに指定します。

  • key_nameは、サービス名です。

  • gateway_sidは、ゲートウェイのSIDを指定し、ゲートウェイをリスニングするOracle Net Listenerのlistener.oraファイル内で指定されたSIDと一致させます。

7.5 トランザクション・ログ・キューの作成

ゲートウェイ初期化ファイル内のTRANSACTION_MODELパラメータが、COMMIT_CONFIRMに設定されて分散トランザクションが可能な場合、次の追加の構成手順が必要です。

コミット確認トランザクション・モデルの詳細は「コミット確認トランザクション」を、TRANSACTION_LOG_QUEUETRANSACTION_RECOVERY_USERおよびTRANSACTION_RECOVERY_PASSWORDの詳細は付録C「ゲートウェイ初期化パラメータ」を参照してください。


関連項目:

キューの作成および構成の詳細は、IBMのドキュメントを参照してください。

ゲートウェイで分散トランザクションをリカバリするには、WebSphere MQシステム管理者が、リカバリ・アカウントおよびキューをキュー・マネージャに設定する必要があります。このアカウントは、有効なWebSphere MQユーザーを持ち、リカバリ・キューへのアクセスを認可されている必要があります。アクセス権限の詳細は、「WebSphere MQオブジェクトの認可」を参照してください。

ゲートウェイは、ゲートウェイによりキュー・マネージャで起動され、このキューにログインした失敗したトランザクションのステータスを、リカバリ・キューを使用して確認します。このキュー内の情報はリカバリ・プロセスで有効で、ゲートウェイ以外が使用、アクセスまたは更新できません。

7.6 データベース・リンク別名ライブラリの管理

ゲートウェイへの接続は、最初にOracleセッションで使用された際、データベース・リンクを通じて確立されます。このコンテキストで、接続はOracleデータベースとゲートウェイ間の接続を指します。接続は、Oracleセッションが終了するまで持続します。別のセッションまたはユーザーは、同一のデータベース・リンクにアクセスし、ゲートウェイおよびキュー・マネージャに別個に接続できます。

データベース・リンクは、ゲートウェイ・セッションの期間中にアクティブです。セッション中にデータベース・リンクを閉じる場合、ALTER SESSION文を使用します。


関連項目:

データベース・リンクの使用方法の詳細は、『Oracle Database管理者ガイド』を参照してください。

7.6.1 データベース・リンクの使用

別名ライブラリは、PL/SQL内のライブラリを表すスキーマ・オブジェクトです。Oracle Database Gateway for WebSphere MQは、別名ライブラリを使用して、Oracle Database Gateway for WebSphere MQとインストールされている共有ライブラリにアクセスします。別名ライブラリを作成するには、CREATE LIBRARY PRIVILEGEが必要です。Oracle Database Gateway for WebSphere MQで使用する別名ライブラリはlibdg4mqで、これはpgmobj.sqlスクリプトで定義され、Oracle Database Gateway for WebSphere MQデプロイ・スクリプトの実行の際に作成されます。

7.6.2 データベース・リンクの作成

データベース・リンクを作成するには、CREATE DATABASE LINKを使用します。USING句では、tnsnames.oraファイル内の接続記述子を指定します。CONNECT TO句では、セキュリティ・モデルがAUTHORIZATION_MODELパラメータでSTRICTに定義された場合、WebSphere MQユーザーIDとパスワードを指定します。CONNECT TO句を含めない場合、現行のユーザーIDおよびパスワードが使用されます。

AUTHORIZATION_MODELパラメータRELAXEDに設定された場合、Oracleデータベースは、ゲートウェイのOracle Net Listenerを起動したユーザー・アカウントのユーザーIDおよびパスワードを使用するため、ユーザーIDおよびパスワードを指定する必要はありません。CONNECT TO句でユーザーIDおよびパスワードを指定すると、Oracleデータベースおよびゲートウェイはこれらの値を無視します。詳細は、「セキュリティ・モデル」を参照してください。

CREATE DATABASE LINK構文は次のとおりです。

CREATE [PUBLIC] DATABASE LINK dblink [CONNECT TO userid IDENTIFIED
              BY password] USING 'tns_name_entry';

説明:

  • dblinkは、データベース・リンク名です。

  • useridは、キュー・マネージャでのセッションを確立するために使用するユーザーIDです。これは、initsid.oraファイルでAUTHORIZATION_MODELSTRICTに設定されている場合にのみ使用されます。ユーザーIDは、すべてのWebSphere MQオブジェクトへのアクセスに対して認証され、PL/SQLコマンド内のデータベース・オブジェクト参照を使用する必要があります。

    useridは、WebSphere MQおよびゲートウェイがインストールされているコンピュータ上のパスワード・ファイル内にある必要があります。そうでなければ、WebSphere MQおよびゲートウェイが別のシステムにインストールされている場合、useridは、UNIXネットワーク情報サービス(NIS)で公開される必要があります。useidに小文字または英数字ではない文字が含まれる場合、useridを引用符(")で囲む必要があります。useridの詳細は、WebSphere MQのドキュメントを参照してください。

  • passwordは、キュー・マネージャでのセッションを確立するために使用するパスワードです。これは、initsid.oraファイルでAUTHORIZATION_MODELSTRICTに設定されている場合にのみ使用されます。

    passwordは、WebSphere MQおよびゲートウェイがインストールされているシステム上のパスワード・ファイル内にある必要があります。そうでなければ、WebSphere MQおよびゲートウェイが別のシステムにインストールされている場合、passowrdは、WindowsまたはUNIXネットワーク情報サービス(NIS)で公開される必要があります。

    passwordに小文字または英数字ではない文字が含まれる場合、passwordを引用符(")で囲む必要があります。

  • tns_name_entryは、tnsnames.oraファイル内で指定されるOracle NetのTNS接続記述子名です。

7.6.3 データベース・リンクの削除

DROP DATABASE LINK文を使用すると、データベース・リンクを削除できます。たとえば、dblinkという名前のデータベース・リンクを削除するには、次のようにします。

DROP [PUBLIC] DATABASE LINK dblink;

インダウト分散トランザクションを解決する必要がある場合は、データベース・リンクを削除しないでください。


関連項目:

データベース・リンクの削除の詳細は、『Oracle Database管理者ガイド』を参照してください。

7.6.4 使用可能なデータベース・リンクの調査

それぞれのデータベースのデータ・ディクショナリには、そのデータベースのすべてのデータベース・リンクの定義が格納されています。USER_DB_LINKSビューには、ユーザーに定義済のデータベース・リンクが表示されます。ALL_DB_LINKSデータ・ディクショナリ・ビューには、定義済のすべてのデータベース・リンクが表示されます。

7.6.5 アクティブなデータベース・リンク数の制限

OPEN_LINKSパラメータを使用すると、ユーザー・プロセスからリモート・データベースへの接続数を制限できます。このパラメータで、単一のユーザー・プロセスが単一のユーザー・セッションで使用できるリモート接続数を制御します。


関連項目:

アクティブなデータベース・リンク数の制限の詳細は、『Oracle Database管理者ガイド』を参照してください。

7.6.6 別名ライブラリの作成

Oracle Database Gateway for WebSphere MQデプロイ・スクリプトを使用して、Oracle Database Gateway for WebSphere MQ別名ライブラリ、libdg4mqを作成してください。インストール中、適切な共有ライブラリ名が、Microsoft WindowsではORACLE_HOME\dg4mq\admin\deploy\pgmobj.sql、およびUNIXベース・システムではORACLE_HOME/dg4mq/admin/deploy/pgmobj.sql内で、選択するOG4MQモデルに基づき、定義されます。

リモート・モデルの場合、libdg4mqc.so共有ライブラリが使用されます。次に例を示します。

CREATE OR REPLACE LIBRARY libdg4mq AS 'ORACLE_HOME/lib/libdg4mqc.so' TRANSACTIONAL;

ローカル・モデルの場合、libdg4mqs.so共有ライブラリが使用されます。次に例を示します。

CREATE OR REPLACE LIBRARY libdg4mq AS 'ORACLE_HOME/lib/libdg4mqs.so' TRANSACTIONAL;

注意:

hp-ux上の共有ライブラリのファイル拡張子は、.slです。たとえば、libdg4mqc.slです。

7.6.7 別名ライブラリの削除

アンデプロイ・スクリプトを使用して、libdg4mqOracle Database Gateway for WebSphere MQ別名ライブラリを削除してください。

7.7 Oracle Visual Workbenchリポジトリのインストール

この項の手順に従い、Oracle Visual Workbenchリポジトリをインストールしてください。

Oracle Visual Workbenchを使用する計画がない場合、またはVisual Workbenchが必要ではないがOracle Database Gateway for WebSphere MQデプロイが必要な本番Oracleデータベースを準備している場合、Oracle Visual Workbenchリポジトリのインストールをスキップできます。詳細は、「本番Oracleデータベースの準備」を参照してください。

7.7.1 インストール前のタスク

次に、インストール前のタスクの手順を示します。

7.7.1.1 手順1: リポジトリ・サーバーの選択

リポジトリ・サーバーは、Visual WorkbenchリポジトリがインストールされているOracleデータベースです。

7.7.1.2 手順2: 初期化スクリプトの検出

Visual Workbenchリポジトリのインストール・スクリプトは、Visual Workbenchとともにインストールされます。リポジトリをOracle Visual Workbenchと同一システムにインストールする場合、必要なインストール・スクリプトはリポジトリ・サーバーにインストール済です。手順3に進んでください。

  1. スクリプト・ディレクトリのリポジトリ・サーバーにディレクトリを作成します。次に例を示します。

    Microsoft Windowsの場合:

    > md %ORACLE_HOME%\dg4mqadmin\repo
    

    UNIXベース・システムの場合:

    $ mkdir $ORACLE_HOME/dg4mq/admin/repo
    $ chmod 777 $ORACLE_HOME/dg4mq/admin/repo
    
  2. ファイル転送プログラムを使用して、リポジトリzipファイル(reposXXX.zip、ここでXXXはリリース番号)を転送する、または、Visual Workbenchシステム上のスクリプト・ファイル・ディレクトリ(Windowsの場合、ORACLE_HOME\dg4mqvwb\server\admin)の.sql接尾辞のあるすべてのスクリプト・ファイルを、リポジトリ・サーバー・システム上のスクリプト・ファイル・ディレクトリに移動します。

7.7.1.3 手順3: Visual Workbenchリポジトリのアップグレード

Windowsの場合はORACLE_HOME\dg4mq\admin\deployディレクトリおよびUNIXベース・システムの場合はORACLE_HOME/dg4mq/admin/deployディレクトリにあるOracle Database Gateway for WebSphere MQとともにインストールされているpgmxxx.sqlファイルをコピーして、既存のVisual Workbenchリポジトリ・インストール・スクリプトをアップグレードしてください。

7.7.1.4 手順4: UTL_RAWパッケージがインストール済であることの確認

Visual Workbenchで生成されたマッピング・パッケージは、ロー・データ操作のルーチンを提供するUTL_RAWパッケージを使用します。

SQL*Plusから、SYSユーザーとして、次の文を発行してください。

SQL> DESCRIBE UTL_RAW

DESCRIBE文が成功の場合、リポジトリ・サーバーにUTL_RAWがインストール済のため、手順5に進んでください。

DESCRIBE文が失敗の場合、UTL_RAWをインストールしてください。

SQL*Plusから、SYSユーザーとして、WindowsではORACLE_HOME\rdbms\adminディレクトリおよびUNISベース・システムではORACLE_HOME/rdbms/adminディレクトリにあるutlraw.sqlおよびprvtrawb.plbスクリプトを実行します。utlraw.sqlスクリプトを先に実行する必要があります。

SQL> @utlraw.sql
SQL> @prvtrawb.plb

7.7.1.5 手順5: DBMS_OUTPUTパッケージが使用可能であることの確認

配布CD-ROMのサンプル・プログラムおよびインストール検証プログラムは、DBMS_OUTPUTパッケージを使用します。

SQL*Plusから、SYSユーザーとして、次の文を発行してください。

SQL> DESCRIBE DBMS_OUTPUT

DESCRIBE文が成功の場合、リポジトリ・サーバーにDBMS_OUTPUTがインストール済のため、手順6に進んでください。

DESCRIBE文が失敗の場合、DBMS_OUTPUTをインストールしてください。


関連項目:

詳細は、『Oracle Database管理者ガイド』を参照してください。

7.7.1.6 手順6: データベース・リンクの作成

Oracle本番システム・サーバー上にデータベース・リンクを作成して、Oracle Database Gateway for WebSphere MQにアクセスしてください。

データベース・リンクがまだない場合、データベース・リンクの詳細は、「データベース・リンク別名ライブラリの管理」を参照してください。

7.7.2 Visual Workbenchリポジトリ・インストール・タスク

pgvwbrepos.sqlを使用して、Visual WorkbenchリポジトリをOracle10gにインストールしてください。現在のディレクトリが、Microsoftの場合はORACLE_HOME\dg4mq\admin\repoディレクトリおよびUNIXベース・システムの場合はORACLE_HOME/dg4mq/admin/repoディレクトリであることを確認し、次のコマンドを入力してpgvwbrepos.sqlを実行します。

sqlplus /nolog @pgvwbrepos.sql

注意:

Visual WorkbenchリポジトリをOracle8i以前にインストールする場合、pgvwbrepos8.sqlを使用してください。この項で説明する例はすべて、Oracle9i以降にインストールする前提で提供されています。

スクリプトには、次の手順があります。

7.7.2.1 手順1: データベース接続情報の入力

[Enter]を押して、LOCALのデフォルト値を使用します。次に、OracleデータベースのSYSTEMおよびSYSアカウントのパスワードの入力を求められます。各パスワードの入力後、[Enter]を押します。

情報が正しくない場合、スクリプトは停止します。スクリプトを再実行する前に、情報を検証してください。

7.7.2.2 手順2: 既存のWorkbenchリポジトリの確認

スクリプトは、既存のVisual Workbenchリポジトリおよびデータ・ディクショナリを検索します。どちらも見つからない場合、スクリプトは次の手順3に進みます。

データ・ディクショナリが存在する場合、スクリプトは停止します。別のOracleデータベースを選択し、スクリプトを再実行して、「手順1: リポジトリ・サーバーの選択」から始めます。

Visual Workbenchが存在する場合、スクリプトには次のオプションがあります。

  • 既存のプライベート・リポジトリをパブリック・リポジトリにアップグレードし、手順3に進みます。

  • 既存のリポジトリを新規プライベート・リポジトリに更新し、手順3に進みます。

  • スクリプトを停止します。

7.7.2.3 手順3: 必要なPL/SQLパッケージの確認

スクリプトは、Oracleデータベース内で、UTL_RAWDBMS_OUTPUTおよびDBMS_PIPEを検索します。このソフトウェアが見つかった場合、スクリプトは手順4に進みます。

ソフトウェアが存在しない場合、スクリプトは停止します。足りないソフトウェアの詳細は、『Oracle Database管理者ガイド』を参照してください。ソフトウェアをインストールしたら、スクリプトを再実行します。

7.7.2.4 手順4: UTL_PGパッケージのインストール

スクリプトは、UTL_PGパッケージを検索します。見つからない場合、UTL_PGがインストールされています。スクリプトは、手順5に進みます。

UTL_PGが見つかった場合、再インストールを求められます。「戻る」を押して、UTL_PGを再インストールしてください。

7.7.2.5 手順5: 管理ユーザーおよびすべてのリポジトリ表の作成

この手順で、Visual Workbenchリポジトリの管理ユーザーをPGMADMINとして作成し、初期パスワードPGMADMINを作成してください。このユーザーは、リポジトリ内のすべてのオブジェクトを所有します。

この手順の後、PGMADMINユーザーのみがアクセスできるPGM_SUPPGM_BQMおよびPGM_UTL8パッケージを含むプライベートVisual Workbenchリポジトリが、Oracle Database内に作成されます。

7.7.2.6 手順6: パブリック・シノニムおよび開発ツールの作成

これは、Visual Workbenchリポジトリのプライベート・アクセス権限を変更するオプションの手順です。プライベート・ステータスでは、PGMADMINユーザーのみがリポジトリにアクセスできます。Nを入力し、[Enter]を押すと、リポジトリのステータスはプライベートのままです。

パブリック・ステータスにより、PGMADMINではない他のユーザーにアクセス権限が付与されます。リポジトリにパブリック・ステータスを与える場合、Yを入力し、[Enter]を押します。

7.7.3 リポジトリの作成後

Visual Workbenchリポジトリの作成後、別のオプションの手順で、Visual Workbenchリポジトリの開発権限がユーザーに付与されます。

PGMADMINユーザーではないユーザーに、Visual Workbenchリポジトリでの開発操作を許可するには、PGMADMINでユーザーに必要な権限を付与する必要があります。これには、次のようにします。

  • リポジトリにパブリック・ステータスがあることを確認します。pgvwbrepos.sqlスクリプトの手順1〜6でリポジトリを作成した場合、パブリック・ステータスがあります。手順6を使用していない場合、スクリプトに戻ってください。スクリプトの手順2で、プライベート・リポジトリをパブリック・ステータスにアップグレードするプロンプトで、Aを入力します。

  • SQL*Plusを使用して、PGMADMINユーザーとして接続し、PGMADEVロールを各ユーザーに付与します。次に例を示します。

    SQL> GRANT PGMDEV TO SCOTT;
    

7.7.4 Visual Workbenchリポジトリの削除

pgvwbremove.sqlを使用して、Oracle10g上のVisual Workbenchリポジトリを削除してください。現在のディレクトリが、Microsoftの場合はORACLE_HOME\dg4mq\admin\repoディレクトリおよびUNIXベース・システムの場合はORACLE_HOME/dg4mq/admin/repoディレクトリ(スクリプトのコピー先)であることを確認し、次のコマンドを入力してこのスクリプトを実行します。

sqlplus /nolog @pgvwbremove.sql

注意:

Oracle8i以前のVisual Workbenchリポジトリを削除する場合、pgvwbremove8.sqlを使用してください。この項で説明する例はすべて、Oracle9i以降にインストールする前提で提供されています。

スクリプトには、次の手順があります。

7.7.4.1 手順1: データベース接続情報の入力

[Enter]を押して、LOCALのデフォルト値を使用します。

次に、OracleデータベースのSYSTEMSYSおよびPGMADMINアカウントのパスワードの入力を求められます。各パスワードの入力後、[Enter]を押します。

情報が正しくない場合、スクリプトは停止します。スクリプトを再実行する前に、情報を検証してください。

7.7.4.2 手順2: 既存のWorkbenchリポジトリの確認

パブリック・シノニムおよび開発ロールを削除するプロンプトで、Yを入力し、[Enter]を押します。これにより、リポジトリはプライベート・ステータスに戻ります。Nを入力して[Enter]を押し、スクリプトを終了するか、次のプロンプトに進みます。

プライベート・リポジトリを確実に削除する場合、Yを入力し、[Enter]を押します。スクリプトにより、すべてのリポジトリ表および関連するパッケージが削除されます。

7.8 本番Oracleデータベースの準備

これには、本番データベースのPL/SQLパッケージの準備、インストールおよび削除が含まれます。

7.8.1 概要

本番OracleデータベースでMIPをコンパイルする前に、次のPL/SQLパッケージが本番Oracleデータベースに存在している必要があります。

  • DBMS_PIPEDBMS_OUTPUTおよびUTL_RAW

    これらのパッケージは、各Oracleデータベースとともに出荷され、通常、事前インストールされています。

  • PGMPGM_BQMPGM_SUPおよびUTL_PG

    これらのパッケージは、Oracle Database Gateway for WebSphere MQとともに出荷されます。これらは、Visual Workbenchリポジトリの作成プロセス中にインストールされます。デプロイ・スクリプトを、インストール済のVisual WorkbenchリポジトリのOracleデータベース上で実行しないでください。リポジトリに使用されるOracleデータベースが、本番環境で使用されるOracleデータベースと異なる場合、これらのパッケージを本番Oracleデータベース上にインストールする必要があります。

この項では、次のスクリプトの実行方法を説明します。

  • pgmdeploy.sql

    必要なPL/SQLパッケージの存在を検証するために使用され、本番Oracleデータベースに存在しない場合はパッケージをインストールするデプロイ・スクリプトです。

  • pgmundeploy.sql

    本番データベースからPL/SQLパッケージを削除するスクリプトです。

7.8.2 PL/SQLパッケージの検証およびインストール

  1. 次のスクリプトを検出します。

    • pgm.sql

    • pgmbqm.sql

    • pgmdeploy.sql

    • pgmsup.sqll

    • pgmundeploy.sql

    • prvtpg.sql

    • utlpg.sql

    これらのスクリプトは、ORACLE_HOMEがゲートウェイのホーム・ディレクトリの場合、WindowsではORACLE_HOME\dg4mq\admin\deployディレクトリおよびUNIXベース・システムではORACLE_HOME/dg4mq/admin/deployディレクトリに、ゲートウェイとともにインストールされます。

  2. 使用する本番インストールデータベースがゲートウェイとは別のシステム上にあり、ORACLE_HOMEが使用するゲートウェイ・システムのゲートウェイ・ホーム・ディレクトリの場合、Microsoft WindowsではORACLE_HOME\dg4mq\admin\deployディレクトリおよびUNIXベース・システムではORACLE_HOME/dg4mq/admin/deployディレクトリ内のファイルを、透過的、FTPなどのファイル転送メソッドを使用して転送します。使用する本番Oracleデータベース・システム上で、転送したデプロイ・スクリプトを含んでいるディレクトリにディレクトリを変更し、手順4にスキップします。

  3. 使用する本番インストールデータベースがゲートウェイと同一システム上にあり、ORACLE_HOMEがゲートウェイ・ホーム・ディレクトリの場合、Microsoft WindowsではORACLE_HOME\dg4mq\admin\deployディレクトリおよびUNIXベース・システムではORACLE_HOME/dg4mq/admin/deployディレクトリにディレクトリを変更します。

  4. pgmdeploy.sqlスクリプトを、次のようにして実行します。

    $ sqlplus /nolog @pgmdeploy.sql
    
  5. スクリプト・プロンプトで、Oracleデータベースの接続文字列LOCALを入力し[Enter]を押してデフォルト値のLOCALを使用します。

  6. スクリプト・プロンプトで、必要なOracleデータベースのパスワードを入力しSYSアカウントのパスワードを入力します。

スクリプトがSYSアカウント・パスワードを検証すると、本番Oracleデータベースに接続します。スクリプトは、ここにインストールされているPL/SQLパッケージを検証し、レポートします。

  • DBMS_OUTPUTDBMS_PIPEまたはUTL_RAWのOracleデータベースのパッケージのどれかが足りない場合、スクリプトは停止します。使用するDBAに足りないパッケージをインストールし、デプロイ・スクリプトを再実行してください。

  • GMPGM_BQMPGM_SUPおよびUTL_PGのOracleパッケージのどれかが足りない場合、スクリプトはそれらを本番Oracleデータベースにインストールします。

7.8.3 PL/SQLパッケージの削除

本番環境のアプリケーションがMIPを使用していない場合、pgmdeploy.sqlスクリプトでインストールされたPL/SQLパッケージを削除できます。次の手順に従って、これらのパッケージを削除してください。

  1. 使用する本番Oracleデータベースで、次のコマンドを入力してデプロイ・スクリプトを含んでいるディレクトリに変更します。

    Microsoft Windowsの場合:

    > cd ORACLE_HOME\dg4mq\admin\deploy
    

    UNIXベース・システムの場合:

    $ cd $ORACLE_HOME/dg4mq/admin/deploy
    
  2. pgmundeploy.sqlを、次のようにして実行します。

    $ sqlplus /nolog @pgmundeploy.sql
    
  3. スクリプト・プロンプトで、Oracleデータベースの接続文字列LOCALを入力し[Return]を押してデフォルト値のLOCALを使用します。

  4. スクリプト・プロンプトで、必要なOracleデータベースのパスワードを入力しSYSアカウントのパスワードを入力します。

スクリプトがSYSアカウント・パスワードを検証すると、本番Oracleデータベースに接続し、pgmdeploy.sqlスクリプトでインストールされたパッケージを削除します。

pgmundeploy.sqlスクリプトの正常な完了後、ここでコンパイルされるMIPへ参照を試みると、本番Oracleデータベースのアプリケーションは失敗します。