目次 前 次 PDF


アプリケーションの起動と停止

アプリケーションの起動と停止
このトピックには次の項が含まれます:
アプリケーションの起動と停止に必要なタスク
図1-1に、Oracle Tuxedoアプリケーションの起動と停止に必要なタスクを示します。
タスク名をクリックすると、そのタスクの実行方法が表示されます。
図1-1 起動と停止のタスク
環境変数の設定
Oracle Tuxedoアプリケーションを管理するには、Oracle Tuxedoの実行可能ファイルおよびデータ・ライブラリにアクセスできることが必要です。たとえば、アプリケーションの起動と停止に必要なコマンドは%TUXDIR%\bin (Windowsホスト・マシンの場合)および$TUXDIR/bin (UNIXホスト・マシンの場合)に格納されています。
Windowsの場合
Windowsホスト・マシンの環境を設定するには、コマンド・プロンプトで次のコマンドを入力します。
set TUXCONFIG=path_name_of_TUXCONFIG_file
set TUXDIR=path_name_of_BEA_Tuxedo_system_root_directory
set APPDIR=path_name_of_BEA_Tuxedo_application_root_directory
set PATH=%APPDIR%;%TUXDIR%\bin;%PATH%
斜体の文字列は、インストール先の適切な絶対パス名に置き換えてください。
Windowsは、PATH変数に設定されたパスを経由して、動的に読込み可能な必須ライブラリ・ファイルにアクセスします。具体的には、次の順序で動的に読込み可能なライブラリ・ファイルが検索されます。
1.
2.
3.
4.
5.
PATH環境変数に設定されているディレクトリ
UNIXの場合
UNIXホスト・マシンの環境を設定するには、次のように環境変数を設定し、エクスポートします。
TUXCONFIG=path_name_of_TUXCONFIG_file
TUXDIR=path_name_of_BEA_Tuxedo_system_root_directory
APPDIR=path_name_of_BEA_Tuxedo_application_root_directory
PATH=$APPDIR:$TUXDIR/bin:/bin:$PATH
LD_LIBRARY_PATH=$APPDIR:$TUXDIR/lib:/lib:/usr/lib:$LD_LIBRARY_PATH
export TUXCONFIG TUXDIR APPDIR PATH LD_LIBRARY_PATH
 
LD_LIBRARY_PATHのかわりにSHLIB_PATHを使用します
LD_LIBRARY_PATHのかわりにLIBPATHを使用します
斜体の文字列は、インストール先の適切な絶対パス名に置き換えてください。
注意:
アプリケーション管理者は、UBBCONFIGファイルのMACHINESセクションで、TUXCONFIGTUXDIRおよびAPPDIRの環境変数を定義するか、またはアプリケーション内の各マシンに対してTM_MIBT_MACHINEクラスを定義してください。これらの環境変数の詳細は、UBBCONFIG(5)またはTM_MIB(5)のリファレンス・ページを参照してください。
TUXCONFIGファイルの作成
各Oracle Tuxedoドメインは構成ファイルによって制御され、インストール時の設定に基づくパラメータが定義されています。テキスト形式の構成ファイルをUBBCONFIGと呼びます。バイナリ形式のUBBCONFIGファイルは、TUXCONFIGと呼ばれます。UBBCONFIGファイルと同じように、TUXCONFIGファイルにも任意の名前を付けることができます。実際の名前は、TUXCONFIG環境変数で指定されたデバイスまたはシステム・ファイル名です。
注意:
構成ファイルの詳細は、『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』UBBCONFIG(5)に関する項を参照してください。
tmloadcf(1)コマンドは、テキスト形式の構成ファイルをTUXCONFIGと呼ばれるバイナリ形式のファイルに変換し、TUXCONFIG変数で指定されている位置に書き込みます。次のようにコマンドを実行します。
$ tmloadcf [-n] [-y] [-c] [-b blocks] {UBBCONFIG_file | - }
注意:
このコマンドを実行するには、MASTERマシンにログインして、構成ファイルのオーナーとしての有効なユーザーIDを取得する必要があります。
各オプションの機能は、次のとおりです。
-nオプションは、構文チェックのみを行い、エラーを報告します
-yオプションは、既存のTUXCONFIGファイルを上書きします。オーバーライドするかどうかの確認は行いません
-cオプションは、構成のIPC (プロセス間通信)リソースの最小値を計算します。
-bオプションは、TUXCONFIGファイルのサイズを制限します
-cおよび-nオプションを使用すると、TUXCONFIGファイルはロードされません。IPC資源はプラットフォームに固有です。-cオプションを使用する場合は、『Oracle Tuxedoインストレーション・ガイド』に記載されているご使用のプラットフォーム用データシートを確認して変更を加える必要があるか判断します。IPC資源を変更する必要がある場合は、ご使用のプラットフォームの管理者ガイドを確認してください。-nオプションにより、構成ファイルの構文エラーが見つかった場合は、エラーを修正してから作業を進めてください。(なお、UBBCONFIG_fileには、構成ファイルの完全修飾名を指定します。)
-bオプションには、引数として、TUXCONFIGファイルを格納するためのブロック数の制限値を指定できます。初期化されていないrawディスク・デバイスにTUXCONFIGをインストールする場合は、このオプションを使用してください。TUXCONFIGが通常のUNIXシステム・ファイルに格納されている場合、このオプションはお薦めできません。
全サイトでのtlistenの起動
ネットワーク・アプリケーションを実行するには、リスナー・プロセスを各マシン上で実行している必要があります。ネットワーク・アプリケーションとは、複数のマシン上で稼働するアプリケーションであり、UBBCONFIGファイルのRESOURCESセクションにあるMODEL MPパラメータで設定します。
注意:
TUXDIRTUXCONFIGAPPDIRおよびその他の関連する環境変数を定義してから、tlistenを起動してください。
プロセスが接続をリスニングするポートは、構成ファイルのNETWORKセクションにあるNLSADDRで指定されているポートと同じである必要があります。各マシン上で、tlisten(1)コマンドを次のように使用します。
tlisten [ -d device ] -l nlsaddr [-u {uid-# | uid-name}] [ -z bits ] [ -Z bits ]
例: tlisten -l //machine1:6500
tlistenのコマンド・オプション
-d device - ネットワーク・デバイスのフルパス名。Oracle Tuxedoのリリース6.4以降では、このオプションは省略可能です。Oracle Tuxedoシステムの以前のバージョン(リリース6.3以前)では、TCP/IPなど一部のネットワーク・プロバイダでこの情報が必要になります。
-l nlsaddr - プロセスが接続をリスニングするネットワーク・アドレス。TCP/IPアドレスは次の形式で指定します。
"//hostname:port_number"

"//#.#.#.#:port_number"
1番目の例では、tlistenがローカル名の解決機能(通常DNS)を利用してhostnameのアドレスを検索します。hostnameはローカル・マシンである必要があります。ローカル名解決機能によってhostnameはローカル・マシンのアドレスに明確に解決されます。

2番目の例では、#.#.#.#はドット区切りの小数形式になります。ドット区切りの10進数形式では、それぞれの#に0 - 255の数字を指定します。このドット区切りの10進数は、ローカル・マシンのIPアドレスを表します。どちらの形式の場合も、port_numberにはtlistenプロセスが接続リクエストの受信をリスニングするTCPポート番号を指定します。port_numberには、0 - 65535までの数字または名前を指定します。port_numberが名前の場合は、ローカル・マシンのネットワーク・サービス・データベースになければなりません。アドレスは、先頭に0xをつけ、16進形式で指定することもできます。先頭の0xに続く文字として、0 - 9までの数字か、またはAからFまでの文字(大文字と小文字は区別しない)を指定できます。IPX/SPXTCP/IPのような任意のバイナリ・ネットワーク・アドレスには、16進数の形式が便利です。アドレスは、任意の文字列としても指定できます。値は、構成ファイル内のNETWORKセクションにあるNLSADDRパラメータの値と同じでなければなりません。
tmloadcf(1)は、nlsaddrMASTER LMIDのエントリから欠落している場合は警告を出力し、これ以外のエントリから欠落している場合はエラーを出力します。ただし、nlsaddrMASTER LMIDエントリから欠落している場合には、tmadmin(1)をリモート・マシンから管理者モードで実行することはできません。可能な処理は、読取り専用操作に限定されています。これは、MASTERサイトで障害が発生しても、バックアップ・サイトから再起動できないことも意味します。
-u uid-#またはuid-name - ユーザーを指定してtlistenプロセスを実行する場合に使用します。このオプションは、リモート・マシンのrootでtlisten(1)コマンドを実行する場合に必要です。
-z [bits] - Oracle Tuxedoシステムの管理プロセスとtlistenとの間のネットワーク・リンクを確立する場合に必要な最低レベルの暗号化を指定します。ゼロ(0)は、暗号化が行われないことを示し、56および128は暗号化キーの長さ(ビット単位)を指定します。ここで指定する最小レベルの暗号化が満たされない場合、リンクの確立は失敗します。デフォルトはゼロです。
-Z [bits] - Oracle Tuxedoシステムの管理プロセスとtlistenとの間のネットワーク・リンクを確立する場合に可能な最大レベルの暗号化を指定します。ゼロ(0)は、暗号化が行われないことを示し、56および128は暗号化キーの長さ(ビット単位)を指定します。デフォルトは128です。
アプリケーション固有のディレクトリとファイルを手動で伝播する
tmboot(1)を実行すると、構成内のすべてのマシンにTUXCONFIGが自動的に伝播されます。ただし、手動で伝播しなければならないファイルもあります。次の表は、ネットワーク・アプリケーションに必要なファイルとディレクトリの一覧です。まず、Oracle Tuxedoシステムをマシンにインストールしてください。
注意:
tlistenプロセスは、アプリケーションを起動する前に、ネットワーク接続されたOracle Tuxedoアプリケーションの各マシンで起動する必要があります。tlisten(1)のリファレンス・ページを参照してください。
TUXDIRTUXCONFIGAPPDIRおよびその他の関連する環境変数を定義してから、tlistenを起動してください。
表1-1に、伝播するディレクトリとファイルを示します。
 
各ノードに対して、APPDIR変数に指定した名前のディレクトリを作成する必要があります。すべてのノードで同じディレクトリ・パス名を使用すると便利です。
バッファ型としてFMLまたはVIEWSを使用する場合は、これらのバッファ型を使用するマシンにフィールド表とVIEW記述ファイルを手動で伝播し、再コンパイルする必要があります。フィールド表ファイルからヘッダー・ファイルを作成するにはmkfldhdr、mkfldhdr32(1)を使用します。VIEWファイルをコンパイルするにはviewc、viewc32(1)を使用します。FMLフィールド表およびVIEW記述ファイルは、FLDTBLDIRFIELDTBLSVIEWDIRVIEWFILES、またはこれらの環境変数の32ビット版を通じて使用できます。
TLOGデバイスの作成
分散トランザクション処理を作成するには、トランザクションに参加するマシンにグローバル・トランザクション・ログ(TLOG)を作成する必要があります。TLOGを定義するには、次の手順に従います。
1.
最初に、構成ファイルのMACHINESセクションで、TLOGDEVICETLOGOFFSETTLOGNAMEおよびTLOGSIZEパラメータを設定する必要があります。
2.
トランザクションに参加する各マシンに対して、TLOGDEVICEの汎用デバイス・リスト(UDL)のエントリを作成する必要もあります。(このタスクは、TUXCONFIGをロードする前でも後でもかまいませんが、システムを起動する前に行う必要があります。)TLOGデバイス用のエントリをUDLに作成するには、アプリケーションを起動していない状態のMASTERマシンでtmadmin -cを実行します。(-cオプションを指定すると、構成モードでtmadminが呼び出されます。)
3.
crdl -z config -b blocks
-z configには、UDLが作成されるデバイス(TLOGの常駐先デバイス)のフルパス名を指定します。-b blocksには、デバイスに割り当てるブロック数を指定します。configの値は、MACHINESセクションのTLOGDEVICEパラメータの値と一致する必要があります。ブロック数は、TLOGSIZEより大きくなければなりません。-zを指定しない場合は、デフォルトとしてconfigの値にFSCONFIG変数の値(アプリケーションのデータベースを指す)が使用されます。
4.
TLOGDEVICEが2つのマシン間でミラーリングされる場合は、片方のマシンに対してステップ4を実行する必要はありません。TLOGを障害から回復できるようにするには、TLOGをミラーリング可能なデバイス上に配置する必要があります。TLOGは、ディスク・パーティション全体を割り当てるほど大きくないため(通常は100ページ程度)、一般にはOracle Tuxedo /Qデータベースと同じrawディスク・スライスに格納されます。
アプリケーションの起動
すべての前提条件が整ったら、tmbootを使用してアプリケーションを起動できます。tmboot(1)を実行できるのは、TUXCONFIGファイルを作成した管理者のみです
アプリケーションは通常、構成ファイルのRESOURCESセクションでMASTERとして指定されたマシン、またはMASTERマシンとして動作するBACKUPマシンから起動します。これ以外のマシンから起動する場合は、-bオプションを使用します。tmbootの実行時に実行可能ファイルが検索されるようにするには、BBLなどのOracle Tuxedoシステムのプロセスが$TUXDIR/binになければなりません。アプリケーション・サーバーは、構成ファイルのAPPDIR変数で定義されたディレクトリになければなりません。
tmbootは、アプリケーション・サーバーの起動時に、構成ファイルのCLOPTSEQUENCESRVGRPSRVIDおよびMINパラメータを使用します。SEQUENCEオプションを指定した場合、アプリケーション・サーバーはSEQUENCEパラメータに指定された順序で起動します。SEQUENCEを指定しない場合、サーバーは構成ファイルに記述されている順序で起動します。コマンド行の形式は、以下のとおりです。
$ tmboot [-g grpname] [-o sequence] [-S] [-A] [-y]
表1-2に、tmbootオプションを示します。
 
-g grpname
このgrpnameパラメータを使用して、グループ内のすべてのTMSとアプリケーション・サーバーを起動します。
-o sequence
SEQUENCEパラメータで指定された順序ですべてのサーバーを起動します。
-s server-name
SERVERSセクションに記述されているすべてのサーバーを起動します。
MACHINESセクションに記述されているマシンのすべての管理サーバーを起動します。このオプションにより、DBBLBBL、およびBRIDGEプロセスは、正しい順序で開始されるようになります。
-y
注意:
tmbootオプションの完全なリストは、tmboot(1)のリファレンス・ページを参照してください。
小規模アプリケーション(マシン2台による構成)でtmbootを実行する
構成全体を起動するには、次のコマンドを入力します。
prompt> tmboot -y
tmbootを実行すると、次のタスクが実行されます。
図1-2に、小規模アプリケーションのデフォルトの起動手順を示します。
図1-2 小規模アプリケーションの起動手順(デフォルト)
大規模アプリケーション(50台を超えるマシン構成)でtmbootを実行する
大規模アプリケーション(50台を超えるマシン構成)の場合は、tmbootは1つのステップですべてのマシンを起動します。デフォルト手順(マシン2台の構成の場合)のすべてのステップは実行しません。図1-3に、タスクの最適化された順序を示します。
図1-3 大規模アプリケーションの起動手順
注意:
アプリケーションの停止
tmshutdown(1)コマンドを使用して、Oracle Tuxedoアプリケーションの一部または全体を停止します。このコマンドの使用上の規則は、tmboot(1)と似ています。tmshutdowntmbootとは逆の処理を行います。
アプリケーション全体が停止すると、tmshutdownはOracle Tuxedoシステムに関連付けられたIPCリソースを削除します。起動する範囲を指定するためのtmbootのオプション(-A、-g、-I、-S、-s、-l、-M、-B)は、tmshutdownでも使用できます。MASTERマシン以外からtmbootを使用するための -bオプションは、tmshutdownではサポートされていません。つまり、tmshutdownコマンドは、必ずMASTER (またはBACKUP MASTER)マシンで実行する必要があります。
サーバーを移行するには、-Rオプションを使用します。このオプションは、掲示板のエントリを削除せずにサーバーを停止します。マシンが分断されている場合、tmshutdownに -P LMIDオプションを指定して、分断されたマシン上で実行することにより、そのマシン上のサーバーを停止することができます。
tmshutdownを実行しても、クライアントの接続先であるマシンの管理サーバーのBBLは停止しません。ただし、-cオプションを使用すると、この特性をオーバーライドできます。直ちにマシンを停止する必要がある場合や、クライアントと通信できない場合に、このオプションを使用してください。
-w delayオプションを使用すると、delayで指定した秒数が経過した後で強制的に停止を実行できます。このオプションにより、すべてのサーバーが直ちに中断されます。以降の作業がキューに登録されることはありません。delayには、キューに登録済のリクエストを処理するための時間を指定します。delayで指定した秒数が経過するとSIGKILL信号がサーバーに送られます。管理者はこのオプションを使用して、アプリケーション・コードでループ状態にあるかまたはブロックされているサーバーを停止することができます。
tmshutdownの実行
tmshutdown(1)を実行できるのは、TUXCONFIGファイルを作成した管理者のみです。アプリケーションの停止は、構成ファイルでMASTERとして指定されているマシンからのみ実行できます。BACKUPマシンがMASTERマシンとして動作している場合、停止プロセスでは、このマシンがMASTERマシンと見なされます。ただし、分断されたマシンは例外です。-pオプションを使用すると、管理者は分断されたマシンからtmshutdownコマンドを実行して、そのサイトのアプリケーションを停止できます。
アプリケーション・サーバーは、SEQUENCEパラメータで指定されている、または構成ファイルにリストされている順序とは逆の順序で停止します。SEQUENCEで順序が指定されたサーバーと、順序が指定されていないサーバーが混在する場合、まず番号が指定されていないサーバーが停止し、次にSEQUENCE番号が指定されたアプリケーション・サーバーが(逆の順序で)停止します。最後に、管理サーバーが停止します。
アプリケーションが停止すると、Oracle Tuxedoシステムが割り当てたIPCリソースはすべて削除されます。tmshutdownにより、DBMSが割り当てたIPCリソースが削除されることはありません。
アプリケーションが正常に停止できない場合にIPCツールを使用する
IPCリソースとは、メッセージ・キュー、共有メモリー、セマフォなどのオペレーティング・システムのリソースのことです。tmshutdownコマンドによってOracle Tuxedoアプリケーションが正常に停止すると、Oracle Tuxedoアプリケーションで使用されるIPCリソースは、すべてシステムから削除されます。ただし、アプリケーションが正常に停止せず、システムにIPC資源が残る場合もあります。これが起こると、アプリケーションを再起動できなくなることがあります。
この問題の解決策として、IPCSコマンドを実行するスクリプトを使用してIPCリソースを削除し、特定のユーザーが保有するすべてのIPCリソースをスキャンする方法があります。しかし、この方法ではIPC資源の識別が困難です。たとえば、特定のOracle Tuxedoアプリケーションに属する資源か、Oracle Tuxedoシステムとは無関係の資源かを識別することができません。誤ってIPC資源を削除するとアプリケーションが破損する可能性があるため、資源の種類を識別できることは重要です。
Oracle TuxedoのIPCツール(tmipcrm(1)コマンド)を使用すると、稼働中のアプリケーションでOracle Tuxedoシステムによって割り当てられているIPCリソース(コア・システムとWorkstationコンポーネントのみ)を削除できます。
IPCリソースを削除するコマンドtmipcrm(1)は、TUXDIR/binに格納されています。 このコマンドは、バイナリ形式の構成ファイル(TUXCONFIG)を読み込み、このファイルの情報を使用して掲示板に書き込みます。tmipcrmを使用できるのは、ローカル・サーバー・マシンに対してのみです。Oracle Tuxedoの構成のリモート・マシンにあるIPCリソースは削除できません。
このコマンドを実行するには、次のコマンド行を入力します。
tmipcrm [-y] [-n] [TUXCONFIG_file]
IPCツールを使用すると、Oracle Tuxedoシステムで使用されるすべてのIPC資源を一覧表示したり、IPC資源を削除することができます。
注意:
このコマンドは、TUXCONFIG環境変数を正確に設定するか、またはコマンド行で適切なTUXCONFIGファイルを指定しないと利用できません。
/QのIPCリソースを削除するには、qmadmin(1) ipcrmコマンドを使用します。

Copyright ©1994, 2017,Oracle and/or its affiliates. All rights reserved