Linkexpress Transactional Replication option説明書 |
目次
索引
![]() ![]() |
第3部 TJNL | > 第12章 Oracle連携編 | > 12.3 Oracleのサポート範囲と初期設定 | > 12.3.2 Oracleの初期設定 |
TJNLはOracleデータベースの更新データをジャーナルとして取得する際に、データベース・トリガー機能と外部プロシージャ(外部ルーチン)機能を使用します。外部プロシージャの動作を可能にするためには、Oracleのネットワーク・コンポーネントが外部プロシージャ・エージェント(extproc)専用のプロセスを起動する必要があります。そのためにOracle Netのローカル・ネーミング・パラメータ(tnsnames.ora)とリスナー・パラメータ(listener.ora)にエントリを追加する必要があります。
外部プロシージャについての詳細およびローカル・ネーミング・パラメータとリスナー・パラメータの詳細はOracleのマニュアルを参照してください。
tnsnames.oraファイルの設定例を"表:tnsnames.oraファイルの設定例"に示します。Database Configuratiaon Assistantを使用してデータベース作成した場合にはOracleによって以下の内容が自動的に設定されています。tnsnames.oraファイルを参照し、記述がない場合のみ追加を行ってください。また、斜体で記述されている箇所は使用するデータベースの環境に合わせて設定されていることを確認してください。
tnsnames.oraファイルの格納場所は以下のとおりです。
------------------------------------------------
$ORACLE_HOME/network/admin/tnsnames.ora
------------------------------------------------
------------------------------------------------
$ORACLE_HOME\network\admin\tnsnames.ora
------------------------------------------------
#ここから外部プロシージャのための設定 EXTPROC_CONNECTION_DATA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) (CONNECT_DATA = (SID = PLSExtProc) (PRESENTATION = RO) ) ) #ここまで外部プロシージャのための設定 Oracleインスタンス名 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ホスト名)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = グローバル・データベース名) ) ) |
指定するKEYはlistener.oraファイルで指定するKEYと一致させる必要があります。また、指定するSIDはlistener.oraファイルのSID_NAMEエントリと一致させる必要があります。
listener.oraファイルの設定例を"表:listener.oraファイルの設定例"に示します。通常はデータベース作成時にOracleによっていくつかの項目が自動的に設定されています。listener.oraファイルを参照し、記述がない項目のみ追加を行ってください。また、斜体で記述されている箇所は使用するデータベースの環境に合わせて設定されていることを確認してください。
listener.oraファイルの格納場所は以下のとおりです。
------------------------------------------------
$ORACLE_HOME/network/admin/listener.ora
------------------------------------------------
------------------------------------------------
$ORACLE_HOME\network\admin\listener.ora
------------------------------------------------
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ホスト名)(PORT = 1521)) ) #ここから外部プロシージャのための設定 (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) #ここまで外部プロシージャのための設定 ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = グローバル・データベース名) (ORACLE_HOME = $ORACLE_HOME) (注) (SID_NAME = Oracleインスタンス名) ) #ここから外部プロシージャのための設定 (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = $ORACLE_HOME) (注) (PROGRAM = extproc) (ENVS="EXTPROC_DLLS=/opt/FJSVtjnl/lib/libtjnltrg.so, LD_LIBRARY_PATH=/opt/FJSVtjnl/lib:/opt/FJSVtrm/lib:$ORACLE_HOME/lib") ) #ここまで外部プロシージャのための設定 ) |
注)環境変数ORACLE_HOMEにはOracleソフトウェアが存在するディレクトリを指定します。
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ホスト名)(PORT = 1521)) ) #ここから外部プロシージャのための設定 (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC)) ) #ここまで外部プロシージャのための設定 ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = Oracleインスタンス名) (SERVICE_NAME = グローバル・データベース名) (ORACLE_HOME = $ORACLE_HOME) (注) ) #ここから外部プロシージャのための設定 (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = $ORACLE_HOME) (注) (PROGRAM = extproc) (ENVS="EXTPROC_DLLS=C:\LinkexpressTRO\TJNL\bin\libtjnltrg.dll") ) #ここまで外部プロシージャのための設定 ) |
注)環境変数ORACLE_HOMEにはOracleソフトウェアが存在するフォルダを指定します。
PROGRAMセクションには外部プロシージャ・エージェントを設定します。なお、インストールされているOracleソフトウェアが32-bit版または64-bit版のいずれかによりPROGRAMセクションに設定するエントリが異なります。インストールされているOracleソフトウェアはOracleデータベースの管理者に確認してください。PROGRAMセクションに設定するエントリを"表:PROGRAMセクションに設定するエントリ"に示します。
[Oracle32-bit版の場合] |
ENVSセクションには外部プロシージャのエントリ・プロセスが動作するために必要な環境変数を設定します。なお、インストールされているOracleソフトウェアが32-bit版または64-bit版のいずれかにより環境変数の設定値が異なります。インストールされているOracleソフトウェアはOracleデータベースの管理者に確認してください。ENVSセクションに設定する環境変数の一覧を"表:ENVSセクションに設定する環境変数の一覧"に示します。
環境変数名 |
値 |
---|---|
EXTPROC_DLLS |
/opt/FJSVtjnl/lib/libtjnltrg.so |
LD_LIBRARY_PATH |
/opt/FJSVtjnl/lib |
/opt/FJSVtrm/lib |
|
[Oracle32-bit版の場合] |
注)環境変数ORACLE_HOMEはOracleソフトウェアが存在するディレクトリを指定します。
ENVSセクションに以下の環境変数を設定する必要があります。ENVSセクションに設定する環境変数の一覧を"表:ENVSセクションに設定する環境変数の一覧"に示します。
環境変数名 |
値 |
---|---|
EXTPROC_DLLS |
インストールフォルダ\TJNL\bin\libtjnltrg.dll |
ENVSセクションには外部プロシージャのエントリ・プロセスが動作するために必要な環境変数を設定します。ENVSセクションに設定する環境変数の一覧を“表:ENVSセクションに設定する環境変数の一覧”に示します。
環境変数名 |
値 |
EXTPROC_DLLS |
/opt/FJSVtjnl/lib/libtjnltrg.so |
LD_LIBRARY_PATH |
/opt/FJSVtjnl/lib |
/opt/FJSVtrm/lib |
|
$ORACLE_HOME/lib(注) |
注)環境変数ORACLE_HOMEはOracleソフトウェアが存在するディレクトリを指定します。
目次
索引
![]() ![]() |