『Oracle Tuxedoコマンド・リファレンス』<Default ?Font>は、Oracle Tuxedoソフトウェアに含まれるシェルレベルのコマンドをアルファベット順に説明します。
特に指定がないかぎり、リファレンス・ページの形式で説明されているコマンドは、下記の構文に従ってオプションや引数を受け付け、次に説明するように解釈されます。
name
[ -option
.. . ] [cmdarg
. . . ]
noargletter
optarg
argletter
(引数文字)を満たす文字列。1つのargletter
(引数文字)の次に来る複数のoptarg
は、カンマで区切るか、あるいはホワイトスペースで区切って引用符で囲む必要があります。
cmdarg
-
--
[ ]
{ }
. . .
bldc_dce
- OSF/DCE
を介して呼び出すことができるOracle Tuxedo ATMIクライアントを作成
bldc_dce [-ooutput_file
] [-iidl_options
] [-ffirstfiles
]
[-llastfiles
] [idl_file
. . .]
bldc_dce
は、すべての入力IDLソース・ファイルおよび関連するACFソース・ファイルを解析し、それらをCのソース・ファイルとオブジェクト・ファイル、およびOSF/DCE
ライブラリと組み合せて、Oracle Tuxedo ATMIクライアントを生成します。この生成されたOracle Tuxedo ATMIクライアントは、DCE
RPC
(つまりDCE
RPC
クライアント)を介して呼び出すことができます。
コマンドライン引数には、入力IDLソース・ファイルと、IDLコンパイラの動作を制御するオプションを指定します。使用できるオプションは次のとおりです。
-o
output_file
-i
idl_options
-no_mepv
オプションを指定できます。
-f
firstfiles
OSF/DCE
ライブラリより前に取り込んでコンパイルする、コンパイラ・オプション、Cソース・ファイル、およびCオブジェクト・ファイルを指定します。
-l
lastfiles
blds_dce
- OSF/DCE
を呼び出すOracle Tuxedo ATMIサーバーを作成
blds_dce [-ooutput_file
] [-iidl_options
] [-ffirstfiles
]
[-llastfiles
] [-sservice
] [idl_file
. . .]
blds_dce
は、すべての入力IDLソース・ファイルおよび関連ACFソース・ファイルを解析し、それらをCソース・ファイルとCオブジェクト・ファイル、およびOSF/DCE
ライブラリと組み合せて、DCE
RPC
呼出しを作成できるOracle Tuxedo ATMIサーバーを生成します。このコマンドの主な使用目的は、Oracle TuxedoシステムからOSF/DCE
へのゲートウェイ・プロセスを作成することです。
コマンドライン引数には、入力IDLソース・ファイルと、IDLコンパイラの動作を制御するオプションを指定します。使用できるオプションは次のとおりです。
-o
output_file
-i
idl_options
-no_mepv
オプションを指定できます。
-f
firstfiles
OSF/DCE
ライブラリより前に取り込んでコンパイルする、コンパイラ・オプション、Cソース・ファイル、およびCオブジェクト・ファイルを指定します。
-l
lastfiles
-s
service
[,
service
. . .]
buildclient
- Oracle Tuxedo ATMIクライアント・モジュールを作成
buildclient [ -C ] [ -v ] [ {-rrmname
| -w } ] [ -oname
]
[ -ffirstfiles
] [ -llastfiles
] [ -k ]
buildclient
は、Oracle Tuxedo ATMIのクライアント・モジュールを構築するときに使用します。このコマンドは、-f
および-l
オプションで指定されるファイルと標準Oracle Tuxedo ATMIライブラリを組み合せて、ロード・モジュールを作成します。ロード・モジュールは、使用しているオペレーティング・システム用に定義されたデフォルトのC言語コンパイル・コマンドを使用し、buildclient
によって構築されます。UNIXシステム用のデフォルトのC言語コンパイル・コマンドは、UNIXシステムのリファレンス・マニュアルで説明されているcc
(1)コマンドです。
-v
-w
-r
オプションとともには使用できません。
-r
rmname
rmname
は、$TUXDIR/udataobj/RM
にあるリソース・マネージャの表にあるものでなければなりません。このファイルの各行は次のような形式になります。
rmname:rmstructure_name:library_names
(詳細は、「buildtms(1)」
を参照してください)。rmname
の値を使用することにより、$TUXDIR/udataobj/RM
にあるエントリは、リソース・マネージャに関連したライブラリを自動的に含み、トランザクション・マネージャとリソース・マネージャ間のインタフェースを正しく設定するのに使用されます。他の値は、リソース・マネージャの表に追加されているものを指定できます。-r
オプションが指定されない場合のデフォルト設定では、クライアントはリソース・マネージャに関連しません。UBBCONFIG(5)のリファレンス・ページを参照してください。
-o
-f
buildclient
のコンパイルおよびリンク・フェーズの最初に、Oracle Tuxedo ATMIライブラリより前に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。コンパイラ・オプションおよび引数を含むように指定する場合は、以下に説明するCFLAGS
およびALTCFLAGS
環境変数を使用します。
-l
buildclient
のコンパイルおよびリンク・フェーズの最後で、Oracle Tuxedoライブラリの後に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。
-C
注意: | このファイルの生成後の内容は、リリースによって異なる場合があります。このファイルにエクスポーズされているデータ構造やインタフェースに依存しないようにしてください。これは、ビルド時の問題のデバッグを支援するためのオプションです。 |
TUXDIR
CC
buildclient
は通常、デフォルトのC言語コンパイル・コマンドを使用してクライアント実行可能コードを生成します。デフォルトのC言語コンパイル・コマンドは、サポートされているオペレーティング・システムごとに定義されており、UNIXシステムの場合はcc
(1)です。代替コンパイラを指定できるようにするため、buildclient
は環境変数CC
が存在するかどうかを調べます。CC
がbuildclient
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、buildclient
はデフォルトのC言語コンパイラを使用します。環境内にCC
が存在する場合、実行されるコンパイラの名前がCCの値となります。
CFLAGS
CFLAGS
は、コンパイラ・コマンドラインの一部として引き渡される引数のセットを指定するときに使用します。この変数は、コマンドライン・オプション「-I${TUXDIR}/include」
とともにbuildclient
により自動的に引き渡されます。CFLAGS
がbuildclient
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、buildclient
はコンパイラ・コマンドライン引数を追加しません。
ALTCC
-C
オプションが指定されると、通常、buildclient
はOracle Tuxedoシェルcobcc
を使用します。このシェルがcob
を呼び出して、クライアントの実行可能ファイルを生成します。代替コンパイラを指定できるようにするため、buildclient
は環境変数ALTCC
が存在するかどうかを調べます。ALTCC
がbuildclient
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、buildclient
はcobcc
を使用します。環境内にALTCC
が存在する場合、実行されるコンパイラ・コマンドの名前がALTCCの値となります。 注意: | Windowsシステムでは、ALTCC およびALTCFLAGS 環境変数は使用できません。これらの変数を設定すると、予想外の結果が生じます。まずCOBOLコンパイラを使用してアプリケーションをコンパイルし、次に生成されたオブジェクト・ファイルをbuildclient(1) コマンドに渡す必要があります。 |
ALTCFLAGS
-I${TUXDIR}/include
」のように指定します。このオプションはbuildclient
によって自動的に渡されます。-C
オプションを使用する場合、コンパイラのオプションと引数をbuildclient -f
オプションに指定すると、エラーが生成されます。ALTCFLAGS
に指定してください。設定しないと、上記のCFLAGS
で使用されるのと同じ値に設定されます。 注意: | 1. ALTCFLAGS は、MicroFocus COBOLコンパイラでのみ機能します。他のサポートされているCOBOLコンパイラ(つまり、IBMCOBOLまたはAccuCOBOL)では、CFLAGS で十分に対応できます。2. ALTCC 環境変数の説明の下の注意を参照してください。 |
COBOPT
COBCPY
buildclient
でリンクするかどうかを示します。環境変数の値には「Yes」または「No」を指定します。「Yes」に設定すると静的バージョンのlibcobatmiライブラリが使用され、それ以外の場合は共有バージョンが使用されます。この環境変数を指定しないと、共有バージョンのlibcobatmiライブラリがデフォルトで使用されます。 注意: | 10.0より前のTuxedoリリースの場合、buildserver は、静的バージョンのlibcobatmiライブラリにリンクします。 |
IBMCobol
」が指定されると、IBMCOBOLコンパイラが使用されます。 パラメータが指定されないと、標準のCOBOLコンパイラが使用されます。
buildclient
のコンパイルやリンク編集の段階でcc(1)に渡すユーザー・ファイルが他にある場合は、まず、Oracle Tuxedo ATMIライブラリの前に、これらのファイルを環境変数TM_COB_CC_FILESに指定する必要があります。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。この環境変数は、-Cオプションが指定され、環境変数COBが「AcuCobol」に設定されている場合にのみ有効です。 注意: | ACUCOBOL CVMで使用されるACUCOBOLのシステム・ライブラリおよびオブジェクト・ファイルは、ファイル・リストに含める必要があります。 |
注意: | ファイルdirect.cは、ACUCOBOLがC外部変数およびCOBOLプログラムの関数にアクセスするために使用されます。プログラマがdirect.cをサード・パーティのソフトウェアをサポートするように変更した場合、変更されたdirect.cは$ACUCOBOL/libディレクトリ下に配置する必要があります。 |
IBMCOBOL
注意: | IBM COBOL 2.0および3.1ではCコンパイラのメッセージはサポートされません。 「 LANG=C 」と指定すると、COBOL 2.0はエラーを返し、コンパイラが終了します。COBOL 3.1では警告が返されます。IBM COBOL 2.0を使用する場合は、「 LANG=en_US 」と指定します。IBM COBOL 3.1では「 LANG=en_US 」は必要ありません。 |
LD_LIBRARY_PATH
(UNIXシステムの場合)
LD_LIBRARY_PATH
には、Oracle Tuxedoシステムの共有オブジェクトに加えて、COBOLコンパイラが使用する共有オブジェクトが存在するディレクトリを指定します。HP-UXシステムではSHLIB_PATH
環境変数を、AIXシステムではLIBPATH
環境変数を使用します。
LIB
(Windows NTシステム)
buildclient
コンパイル・ツールは、以下のプラットフォームで使用できます。
buildclient
コマンドラインで指定するファイル名は、お使いのオペレーティング・システムの構文とセマンティクスに従ってください。
リスト1に、一般的なCOBOLコンパイラの例を示します。
CC=ncc CFLAGS="-I /APPDIR/include"; export CC CFLAGS
buildclient -o empclient -f emp.c -f "userlib1.a userlib2.a"
COBCPY=$TUXDIR/cobinclude
COBOPT="-C ANS85 -C ALIGN=8 -C NOIBMCOMP -C TRUNC=ANSI -C OSEXT=cbl"
COBDIR=/usr/lib/cobol LD_LIBRARY_PATH=$COBDIR/coblib:$TUXDIR/lib
export COBOPT COBCPY COBDIR LD_LIBRARY_PATH
buildclient -C -o empclient -f name.cbl -f "userlib1.a userlib2.a"
リスト2に、ACUCOBOLコンパイラの例を示します。
TUXDIR=/opt/tuxedo10.0
TM_COB_STATIC=no
COB=AcuCobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8"
TM_COB_VERSION=7.2
ACUCOBOL=/opt/AcuCobol-7.2.1
TM_COB_CC_FILES="-lruncbl -lclnt -lacvt -lfsi -laregex -lacuterm -lextfh -laxml -lexpat -lvision -lesql -lacme -lz -lm"
LD_LIBRARY_PATH=$ACUCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT TM_COB_VERSION ACUCOBOL TM_COB_CC_FILES LD_LIBRARY_PATH
buildclient -C -o CSIMPCL -f CSIMPCL.cbl
リスト3に、IBMCOBOLコンパイラの例を示します。
TUXDIR=/opt/tuxedo10.0
TM_COB_STATIC=no
COB=IBMCobol
IBMCOBOL=/usr/lpp/cobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8" LD_LIBRARY_PATH=$IBMCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT IBMCOBOL LD_LIBRARY_PATH
buildclient -C -o CSIMPCL -f CSIMPCL.cbl
buildserver(1)
、buildtms(1)
、compilation(5)
UNIXシステムのリファレンス・マニュアルのcc
(1)、ld
(1)
buildmqadapter
- TM_MQI
、TM_MQO
、およびTMQUEUE_MQM
サーバーをリンク
buildmqadapter [-v] [-r rmname][-c] [-t]
buildmqadapterはTM_MQI
、TM_MQO
、およびTMQUEUE_MQM
サーバーを作成し、これらのサーバーを$TUXDIR/bin/TM_MQI、$TUXDIR/bin/TM_MQO
、および$TUXDIR/bin/TMQUEUE_MQM
にインストールします。
注意: | 出力ファイルを別の場所に配置する必要がある場合、コマンドbuildTM_MQI(1) 、buildTM_MQO(1) 、およびbuildTMQUEUE_MQM(1) をそれぞれかわりに使用する必要があります。 |
buildmqadapter
で作成されるサーバーは、Tuxedo MQ AdapterがIBM WebSphere MQとのやり取りに使用します。詳細は、Oracle MQ Adapter for Tuxedo 11gR1ユーザーズ・ガイドを参照してください。
ユーザーは、MQ Adapterサーバー・ファイルを作成または上書きするためのパーミッションを持つ必要があります。
buildmqadapter
はbuildserverコマンドを呼び出してそれぞれのMQ Adapterサーバーを作成します。
あらかじめリンクされたオブジェクトではなく、buildmqadapter
を使用してMQ Adapterサーバー・ファイルを作成することで、Tuxedo管理者は次を構成できます。
buildmqadapter
では、MQリソース・マネージャのTMSサーバーが作成されないため、Tuxedo管理者はある時点でbuildtmsを実行してWebSphere MQ TMSサーバーを作成する必要があります。
$TUXDIR/udataobj/RM
にあるリソース・マネージャ表に登録されていなければなりません。rm_name
の値に対応するエントリは、リソース・マネージャに対する正しいライブラリを自動的に組み込み、かつトランザクション・マネージャとリソース・マネージャとの間のインタフェースを正しく設定(xa_switch_t
構造体を使用して)するときに使用します。このパラメータのデフォルト値はMQSeries_XA_RMI
です。
buildmqadapter
はbuildserverコマンドを使用して出力ファイルを生成します。buildserverは、コンパイラおよびコンパイラ・フラグに関してそれぞれCCおよびCFLAGS環境変数を使用します(設定されている場合)。詳細は、「 buildserver(1)
」を参照してください。
buildnetclient
— Oracle Tuxedo .NETワークステーション・クライアント・モジュールを作成
buildnetclient [-v] [-o outfile] [-csflag flagstring] [.cs source files] [.dll assembly files] [.netmodule module files]
buildnetclient
は、Tuxedo .NETワークステーション・クライアント・アプリケーションを構築するときに使用されます。このコマンドは、.cs
ソース・ファイルの引数で指定されるファイルを、.dll
アセンブリ・ファイル、.netmodule
モジュール・ファイル
をTuxedo .NETワークステーション・クライアントのラッパー・ライブラリと組み合せて、クライアント・アプリケーションを形成します。その後、Microsoftの.NET Framework環境で提供されるC#コンパイラである(csc.exe
)を使用してクライアント・アプリケーションが作成されます。
csflag
オプションを設定すると、C#コンパイラに渡すオプションを指定できます。
注意: | 複数のC#コンパイラ・オプションを指定できます。複数のオプションを指定するときには、空白で区切り、引用符で囲む必要があります。 |
-v
-o outfile
Main
が含まれるクラスを持つC#のソース・ファイルの名前を取ってアプリケーション・ファイルの名前が付けられます。ファイル名の拡張子は、そのアプリケーションが実行されるオペレーティング・システムによって異なります(Windowsシステムの場合は拡張子は.exe
になります)。
-csflag flagstring
.cs source files
.dll assembly files
.netmodule module files
buildnetclient
は、コマンドラインから渡された引数を解析して、C#コンパイラを呼び出す別のコマンドラインを作成し、実行可能アプリケーションをビルドします。
たとえば、[buildnetclient -o t1.exe, t1.cs]
は、Windowsシステム上ではbuildnetclient
によってcsc /out:t1.exe /t:exe /r:%TUXDIR%\bin\libwscdnet.dll t1.cs
に変換されます。
次の例では、2つのC#ソース・ファイル、t1.cs、t2.csと、モジュール・ファイルt3.netmoduleを指定して、実行可能アセンブリfirst.exeをビルドする場合を示しています。この例では、t1.csから、これらのファイルと同じディレクトリにあるライブラリ・アセンブリfunc.dllが提供するメソッドを呼び出しています。
[buildnetclient -o first.exe func.dll t1.cs t3.netmodule t2.cs]
『Tuxedo .NETワークステーション・クライアントの使用』のTuxedo .NETワークステーション・クライアント・アプリケーションの作成に関する項<Default ?Font>
buildobjclient - CORBAクライアント・アプリケーションを作成
buildobjclient [-v][-o name] [-f firstfile-syntax]
[-l lastfile-syntax] -P
buildobjclient
コマンドを使用して、CORBAクライアント・アプリケーションを構築できます。このコマンドは、-f
および-l
オプションで指定されるファイルと標準のCORBAライブラリを組み合せて、クライアント・アプリケーションを形成します。クライアント・アプリケーションは、使用しているオペレーティング・システム用に定義されたデフォルトのC++言語コンパイル・コマンドによって作成されます。
指定したすべての.c
および.cpp
ファイルは、使用しているオペレーティング・システム用のコンパイル・システムを1回呼び出すことによってコンパイルされます。呼び出すコンパイラを指定するには、CC
環境変数にコンパイラの名前を指定します。CC
環境変数を定義していない状態でbuildobjclient
が呼び出された場合は、すべての.c
および.cpp
ファイルがコンパイル時に、使用しているオペレーティング・システム用のデフォルトのC++言語コンパイル・コマンドが呼び出されます。
ユーザーは、CFLAGS
またはCPPFLAGS
環境変数を使用すると、コンパイラに渡すオプションを指定できます。CPPFLAGS
の値は、CFLAGS
を定義していない状態でbuildobjclient
が呼び出された場合に使用されます。
-v
-o
name
client<.type>
になります。typeは拡張子で、アプリケーションのオペレーティング・システムによって異なります。たとえば、UNIXシステムではtype
は付きませんが、Windowsシステムではtype
は.EXE
になります。
-f
firstfile-syntax
buildobjclient
のコンパイルとリンクの段階で、最初にインクルードすべきファイルを指定します。指定したファイルは、CORBAライブラリよりも前にインクルードされます。表2に、ファイルを指定する3つの方法を示します。
注意: | 名前に空白が含まれているファイルは指定できません。 |
注意: | -f オプションは何度でも指定できます。 |
-l
lastfile-syntax
buildobjclient
のコンパイルとリンクの段階で、最後にインクルードすべきファイルを指定します。指定したファイルは、CORBAライブラリよりも後にインクルードされます。表3に、ファイルを指定する3つの方法を示します。
注意: | -l オプションは何度でも指定できます。 |
-P
Callbacks
ラッパー・クラスを使用できます。生成される共同クライアント/サーバーは、<Default ?Font>Oracle Tuxedo TP Frameworkで提供されるオブジェクト状態管理とトランザクション管理は利用できません。クライアントを生成するときに、-P
スイッチをIDLコンパイラに渡しておく必要があります。TP Frameworkで提供されるすべてのサポートを備えたサーバーを構築するにはbuildobjserver
を使用します。デフォルトでは、サーバー・ライブラリにリンクしません。つまり、デフォルトでは、共同クライアント/サーバーではなくクライアントのみが作成されます。
-hまたは -?
TUXDIR
CC
.c
または.cpp
のすべてのファイルに使用するコンパイラを指定します。定義しない場合は、すべての.c
および.cpp
ファイルのコンパイル時に、使用しているオペレーティング・システム用のデフォルトのC++言語コンパイル・コマンドが呼び出されます。
CFLAGS
.c
または.cpp
のファイルのコンパイラ・コマンドラインの一部として渡す引数を示します。buildobjclient
コマンド環境内にCFLAGS
が存在しない場合は、
CPPFLAGS
環境変数がチェックされます。
CPPFLAGS
注意: | CFLAGS 環境変数によって渡される引数は、CPPFLAGS 変数より優先されます。 |
buildobjclient
コマンドによって自動的に渡されるコマンドライン・オプション"-I$(TUXDIR)/include"
(UNIXシステムの場合)または
/I%TUXDIR%¥
(Windowsシステムの場合)に追加されます。CPPFLAGS
がbuildobjclient
コマンド環境に存在しない場合、コンパイラ・コマンドは追加されません。
LD_LIBRARY_PATH
(UNIXシステムの場合)
SHLIB_PATH
環境変数を、AIXシステムではLIBPATH
環境変数を使用します。
LIB
(Windowsシステムの場合)
buildobjclient
コマンドは、クライアントのみのCORBAシステムではサポートされません。
次の例では、Windowsシステム上でCORBAクライアント・アプリケーションを作成します。
set CPPFLAGS=-I%APPDIR%\include
buildobjclient -o empclient.exe -f emp_c.cpp -l userlib1.lib
次の例では、cシェルを使用するUNIXシステム上でCORBAクライアント・アプリケーションを作成します。
setenv CPPFLAGS=$APPDIR/include
buildobjclient -o empclient -f emp_c.cpp -l userlib1.a
buildobjserver
- CORBAサーバー・アプリケーションを構築
buildobjserver [-v] [-o
name
] [-f
firstfile-syntax
]
[-llastfile-syntax
] [-r
rmname
][-t]
buildobjserver
コマンドを使用して、<Default ?Font>CORBAサーバー・アプリケーションを構築できます。このコマンドは、メイン・ルーチンで-f
および-l
オプションによって指定されるファイルと標準の<Default ?Font>CORBAライブラリを組み合せて、サーバー・アプリケーションを形成します。サーバー・アプリケーションは、プラットフォームのデフォルトのC++コンパイラによって作成されます。
指定したすべての.c
および.cpp
ファイルは、使用しているオペレーティング・システム用のコンパイル・システムを1回呼び出すことによってコンパイルされます。呼び出すコンパイラを指定するには、CC
環境変数にコンパイラの名前を指定します。CC
環境変数を定義していない状態でbuildobjserver
が呼び出された場合は、すべての.c
および.cpp
ファイルがコンパイル時に、使用しているオペレーティング・システム用のデフォルトのC++言語コンパイル・コマンドが呼び出されます。
ユーザーは、環境変数CFLAGS
またはCPPFLAGS
を設定することにより、コンパイラに渡すオプションを指定できます。buildobjserver
の呼出し時に、CFLAGS
は定義されていないが、CPPFLAGS
が定義されている場合、このコマンドはCPPFLAGS
の値を使用します。
-v
-o
name
server.
type
になります。type
は拡張子で、アプリケーションが対応するオペレーティング・システムを示します。たとえば、UNIXシステムでserverと呼ばれるアプリケーションは、Windows NTシステムではserver.EXE
と呼ばれます。
-f
firstfile-syntax
buildobjserver
コマンドのコンパイルおよびリンク・フェーズで最初に(つまり、CORBAライブラリの前に)取り込むファイルを指定します。ファイルを指定する2種類の方法については、「最初に取り込むファイルの指定方法」の表を参照してください。
-l
lastfile-syntax
buildobjserver
コマンドのコンパイルおよびリンク・フェーズで最後に(つまり、CORBAライブラリの後に)取り込むファイルを指定します。ファイルを指定する2種類の方法については、「最後に取り込むファイルの指定方法」の表を参照してください。
-r
rmname
rmname
は、リソース・マネージャ表に指定されている必要があります。この表は、UNIXシステムでは$TUXDIR/udataobj/RM
に、Windows NTシステムでは%TUXDIR%\udataobj\RM
に格納されています。 このファイルの各エントリの形式は、rmname:rmstructure_name:library_names
です。rmname
値を使用することで、$TUXDIR/udataobj/RM
または%TUXDIR%\udataobj\RM
内のエントリを、リソース・マネージャに関連付けられているライブラリに自動的にインクルードし、トランザクション・マネージャとリソース・マネージャの間のインタフェースを設定できます。値TUXEDO/SQL
を指定すると、Oracle TuxedoシステムとSQLリソース・マネージャのライブラリがインクルードされます。他の値は、リソース・マネージャの表に追加されているものを指定できます。-r
オプションが指定されていない場合は、デフォルトでnullリソース・マネージャが使用されます。
-hまたは -?
-t
UBBCONFIG
ファイルのMAXDISPATCHTHREADS
パラメータで1を超える値を指定することもできます。指定しない場合、CORBAサーバーはシングル・スレッドのアプリケーションとして動作します。
TUXDIR
CC
CFLAGS
.c
または.cpp
ファイル拡張子を持つファイルのコンパイラ・コマンドラインの一部として渡される引数を指定します。CFLAGS
がbuildobjserver
コマンド環境で使用できない場合、buildobjserver
コマンドはCPPFLAGS
環境変数があるかどうかを調べます。
CPPFLAGS
注意: | CFLAGS 環境変数によって渡される引数は、CPPFLAGS 環境変数より優先されます。 |
.c
または.cpp
ファイル拡張子を持つファイルのコンパイラ・コマンドラインの一部として渡される引数を指定します。このオプションは、UNIXシステムのコマンドライン・オプション-I$TUXDIR/include
、またはWindows NTシステムのコマンドライン・オプション/I%TUXDIR%\include
への追加として、buildobjserver
コマンドによって自動的に渡されます。buildobjserver
コマンド環境内でCPPFLAGS
が利用できない場合、コンパイラ・コマンドは追加されません。
LD_LIBRARY_PATH
(UNIXシステムの場合)
SHLIB_PATH
環境変数を、AIXシステムではLIBPATH
環境変数を使用します。
LIB
(Windows NTシステム)
buildobjserver
コマンドは、クライアントのみの<Default ?Font>CORBAシステムではサポートされません。
次の例では、emp_s.cpp
およびemp_i.cpp
ファイルを使用して、UNIXシステム上で<Default ?Font>CORBAサーバー・アプリケーションを作成します。
buildobjserver -r TUXEDO/SQL -o unobserved
-f “emp_s.cpp emp_i.cpp”
次の例は、buildobjserver
コマンドで環境変数CC
およびCFLAGS
を使用する方法を示しています。また、-f
および-lm
オプションを使用して、BourneまたはKornシェルで数学ライブラリをリンクする方法も示しています(UNIXシステム)。
CFLAGS=-g CC=/bin/cc \
buildobjserver -r TUXEDO/SQL -o TLR -f TLR.o -f util.o -l -lm
次の例は、リソース・マネージャを指定せずにUNIXシステム上でbuildobjserver
コマンドを使用する方法を示しています。
buildobjserver -o PRINTER -f PRINTER.o
以下では、サポートされている各オペレーティング・システム・プラットフォーム用のRMファイルの例を示します。
Oracle_XA;xaosw;C:\Orant\rdbms73\xa\xa73.lib
C:\Orant\pro22\lib\msvc\sqllib18.lib
Oracle_XA:xaosw:-L$ORACLE_HOME/rdbms/lib
-L$ORACLE_HOME/precomp/lib -lc
-L/home4/m01/app/oracle/product/7.3.2/lib -lsql -lclntsh
-lsqlnet -lncr -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6
-lcore3 -lsocket -lnsl -lm -ldl -lthread
Oracle_XA:xaosw:-L${ORACLE_HOME}/lib -lxa
${ORACLE_HOME}/lib/libsql.a -lsqlnet -lncr -lsqlnet
${ORACLE_HOME}/lib/libclient.a -lcommon -lgeneric -lsqlnet
-lncr -lsqlnet ${ORACLE_HOME}/lib/libclient.a -lcommon
-lgeneric -lepc -lepcpt -lnlsrtl3 -lc3v6 -lcore3
-lnlsrtl3 -lcore3 -lnlsrtl3 -lm
Oracle_XA:xaosw:-L${ORACLE_HOME}/lib -lxa -lsql -lsqlnet
-lncr -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6
-lcore3 -lm -lld
Oracle_XA:xaosw:-L${ORACLE_HOME}/lib -lclntsh
buildserver
- Oracle Tuxedo ATMIのサーバーのロード・モジュールを構築
buildserver [-C] [-M] [-s services[:func[()]]][-v] [-o outfile] [-f firstfiles] [-l lastfiles] [{-r|-g} rmname] [-E envlabel] [-t] [-z]
buildserver
は、Oracle Tuxedo ATMIのサーバーのロード・モジュールを構築するために使用されます。このコマンドは、-f
および-l
オプションで指定されるファイルと、標準サーバー・メイン・ルーチンおよび標準Oracle Tuxedo ATMIライブラリを組み合せて、ロード・モジュールを作成します。ロード・モジュールは、buildserver
が呼び出すcc
(1)コマンドによって構築されます。(UNIXシステム・リファレンス・マニュアルのcc
(1)に関する項を参照してください。)buildserver
コマンドには、以下のオプションがあります。
-v
-o
outfile
-f
firstfiles
buildserver
のコンパイルおよびリンク・フェーズの最初に、Oracle Tuxedo ATMIライブラリより前に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。コンパイラ・オプションおよび引数を含むように指定する場合は、以下に説明するCFLAGS
およびALTCFLAGS
環境変数を使用します。
-l
lastfiles
buildserver
のコンパイルおよびリンク・フェーズの最後で、Oracle Tuxedoライブラリの後に取り込む1つまたは複数のユーザー・ファイルを指定します。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは何回指定してもかまいません。
M
-r
rmname
rmname
は、$TUXDIR/udataobj/RM
にあるリソース・マネージャの表にあるものでなければなりません。このファイルの各行は次のような形式になります。
rmname:rmstructure_name:library_names
(詳細は、「buildtms(1)」
を参照してください)。rmname
の値を使用することにより、$TUXDIR/udataobj/RM
にあるエントリは、リソース・マネージャに関連したライブラリを自動的に含み、トランザクション・マネージャとリソース・マネージャ間のインタフェースを正しく設定するのに使用されます。他の値は、リソース・マネージャの表に追加されているものを指定できます。-r
オプションが指定されていない場合は、デフォルトでnullリソース・マネージャが使用されます。UBBCONFIG(5)のリファレンス・ページを参照してください。 -M
が指定された場合は、buildserver
によって最大32種類のリソース・マネージャが許可されます。32を上回るリソース・マネージャが-r
オプションで指定されると、前のリソース・マネージャが置き換えられ、警告メッセージが出力されます。 重複したリソース・マネージャ名が指定されると、無視されて、警告メッセージが出力されます。buildserver
では、重複したライブラリが無視され(RMファイルに構成されたlibrary_names
と比較)、警告メッセージが出力されます。
-s
{ @filename
| service
[,service
...][:func
] | :func
} ]
tmadmin(1)
またはTM_MIB(5)によりファイルを取得した場合は、名前の最初の127文字だけが表示されます(servopts(5)に関する項を参照。)サービスに関連付けるすべての関数は、このオプションに指定する必要があります。ほとんどの場合、サービスは同じ名前を持つ関数によって実行されます。つまり、x
サービスは関数x
によって実行されます。たとえば、次を指定すると、サービスx
、y
およびz
と関連付けられたサーバーが構築され、それぞれが同名の関数によって処理されます:
-s x,y,z
。 その他のケースでは、異なる名前の関数でサービスが実行されることもあります。「-s x,y,z:abc
」と指定すると、サービスx
、y
およびz
に関連付けられたサーバーが構築され、それぞれが関数abc
によって処理されます。 カンマの間に空白を入力しないでください。関数名の前にはコロンを付けます。別のケースでは、実行時までサービス名がわからない場合もあります。サービスを関連付けられる関数は、buildserver
に指定する必要があります。サービス名をマップできる関数を指定するには、関数名の前にコロンを付けます。たとえば、「-s :pqr
」と指定すると、サービスが関連付けられている関数pqr
を含むサーバーが構築されます。tpadvertise(3c)を使用して、サービス名をpqr
関数にマップできます。ファイル名は、前に@記号を付けると-s
オプションに指定できます。このファイルの各行は、-s
オプションの引数と見なされます。このファイルにコメントを入力できます。コメントは必ず「#」記号で始めます。このファイルを使用すると、サービスをマップできるすべての関数をサーバーに指定できます。 -s
オプションは何回使用してもかまいません。「.」で始まるサービスはシステムが使用するために予約されています。-s
オプションを使用してそのようなサービスをサーバーに組み込むと、buildserver
が失敗します。
-C
buildserver
は通常、cc
コマンドを使用してa.out
を生成します。代替コンパイラを指定できるようにするため、buildserver
はシェル変数CC
が存在するかどうかを調べます。CC
がbuildserver
の環境にない場合、または変数の値が文字列""
である場合は、buildserver
はコンパイラとしてcc
を使用します。環境内にCC
が存在する場合、実行されるコンパイラの名前がCCの値となります。同様に、シェル変数CFLAGS
も、コンパイラへ渡す一連のパラメータを取り込むためにチェックされます。
-k
buildserver
では、サービス表やmain()
関数などのデータ構造に基づいてメイン・スタブが生成されます。このスタブは、通常どおりコンパイルされ、サーバーがビルドされたときに削除されます。このオプションは、ソース・ファイルを保持する必要があることを示します(ソース・ファイル名を表示するには、-v
オプションを使用します)。 注意: | このファイルの生成後の内容は、リリースによって異なる場合があります。このファイルにエクスポーズされているデータ構造やインタフェースに依存しないようにしてください。これは、ビルド時の問題のデバッグを支援するためのオプションです。 |
-t
MAXDISPATCHTRHREADS
に1より大きな値が設定されている場合に、このオプションを指定せずにサーバーを起動しようとすると、ユーザー・ログに警告メッセージが出力され、サーバーはシングル・スレッド操作に戻ります。
-z
TUXDIR
CC
buildserver
は通常、デフォルトのC言語コンパイル・コマンドを使用してサーバー実行可能コードを生成します。デフォルトのC言語コンパイル・コマンドは、サポートされているオペレーティング・システムごとに定義されており、UNIXシステムの場合はcc
(1)です。代替コンパイラを指定できるようにするため、buildserver
は環境変数CC
が存在するかどうかを調べます。CC
がbuildserver
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、buildserver
はデフォルトのC言語コンパイラを使用します。環境内にCC
が存在する場合、使用されるコンパイラの名前がCCの値となります。
CFLAGS
CFLAGS
は、コンパイラ・コマンドラインの一部として引き渡される引数のセットを指定するときに使用します。この変数は、コマンドライン・オプション「-I${TUXDIR}/include」
とともにbuildserver
により自動的に引き渡されます。CFLAGS
がbuildserver
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、buildserver
はコンパイラ・コマンドライン引数を追加しません。
ALTCC
-C
オプションが指定されると、通常、buildserver
はOracle Tuxedoシェルcobcc(1)
を使用します。このシェルがcob
を呼び出して、サーバー実行可能ファイルを生成します。代替コンパイラを指定できるようにするため、buildserver
は環境変数ALTCC
が存在するかどうかを調べます。ALTCC
がbuildserver
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、buildserver
はcobcc
を使用します。環境内にALTCC
が存在する場合、実行されるコンパイラ・コマンドの名前がALTCCの値となります。 注意: | Windowsシステムでは、ALTCC およびALTCFLAGS 環境変数は使用できません。これらの変数を設定すると、予想外の結果が生じます。最初にCOBOLコンパイラを使用してアプリケーションをコンパイルし、次に生成されたオブジェクト・ファイルをbuildserver(1) コマンドに渡します。 |
ALTCFLAGS
ALTCFLAGS
には、-C
オプションを指定した場合に、COBOLコンパイラ・コマンドラインの一部として渡す追加の引数を指定します。この変数は、コマンドライン・オプション「-I${TUXDIR}/include」
とともにbuildserver
により自動的に引き渡されます。-C
オプションを使用する場合、コンパイラのオプションと引数をbuildserver -f
オプションに指定すると、エラーが生成されます。ALTCFLAGS
に指定してください。設定しないと、上記のCFLAGS
で使用されるのと同じ値に設定されます。 注意: | 1. ALTCFLAGS は、MicroFocus COBOLコンパイラでのみ機能します。他のサポートされているCOBOLコンパイラ(つまり、IBMCOBOLまたはAccuCOBOL)では、CFLAGS で十分に対応できます。2. ALTCC 環境変数の説明の下の注意を参照してください。 |
COBOPT
COBCPY
buildserver
でリンクするかどうかを示します。環境変数の値には「Yes」または「No」を指定します。「Yes」に設定すると静的バージョンのlibcobatmiライブラリが使用され、それ以外の場合は共有バージョンが使用されます。この環境変数を指定しないと、共有バージョンのlibcobatmiライブラリがデフォルトで使用されます。 注意: | 10.0より前のTuxedoリリースの場合、buildserver は、静的バージョンのlibcobatmiライブラリにリンクします。 |
IBMCobol
」が指定されると、IBMCOBOLコンパイラが使用されます。 パラメータが指定されないと、標準のCOBOLコンパイラが使用されます。
buildserver
のコンパイルやリンク編集の段階でcc(1)に渡すユーザー・ファイルが他にある場合は、まず、Oracle Tuxedo ATMIライブラリの前に、これらのファイルを環境変数TM_COB_CC_FILESに指定する必要があります。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。この環境変数は、-Cオプションが指定され、環境変数COBが「AcuCobol」に設定されている場合にのみ有効です。 注意: | ACUCOBOL CVMで使用されるACUCOBOLのシステム・ライブラリおよびオブジェクト・ファイルは、ファイル・リストに含める必要があります。 |
注意: | ファイルdirect.cは、ACUCOBOLがC外部変数およびCOBOLプログラムの関数にアクセスするために使用されます。プログラマがdirect.cをサード・パーティのソフトウェアをサポートするように変更した場合、変更されたdirect.cは$ACUCOBOL/libディレクトリ下に配置する必要があります。 |
IBMCOBOL
注意: | IBM COBOL 2.0および3.1ではCコンパイラのメッセージはサポートされません。 「 LANG=C 」と指定すると、COBOL 2.0はエラーを返し、コンパイラが終了します。COBOL 3.1では警告が返されます。IBM COBOL 2.0を使用する場合は、「 LANG=en_US 」と指定します。IBM COBOL 3.1では「 LANG=en_US 」は必要ありません。 |
LD_LIBRARY_PATH
(UNIXシステムの場合)
LD_LIBRARY_PATH
には、Oracle Tuxedoシステムの共有オブジェクトに加えて、COBOLコンパイラが使用する共有オブジェクトが存在するディレクトリを指定します。HP-UXシステムではSHLIB_PATH
環境変数を、AIXシステムではLIBPATH
環境変数を使用します。
LIB
(Windows NTシステム)
以前のリリースでは、sql
つまりdatabase
のgenoption
を指定するのに-g
オプションを使用できました。上位互換性を保持するため、このオプションは-r
オプションの同義語になっています。
buildserver
コンパイル・ツールは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで使用できます。RM XAライブラリは、Windowsプラットフォームではサポートされていません。
コンパイル・システムによっては、main()
へのコードの追加が必要になる場合があります。たとえば、C++でコンストラクタを初期化したり、COBOL用のライブラリを初期化するような場合です。サーバーのmain()
のすべての変数宣言の直後で、すべての実行文の前に、アプリケーションのコードをインクルードするための全般的な機構が用意されています。これによって、アプリケーションは変数の宣言と文の実行を1ブロックのコードで行うことができます。アプリケーションexitは、#ifdef TMMAINEXIT #include "mainexit.h" #endif
のように定義できます。この機能を使用するためには、環境変数ALTCFLAGS
(COBOLの場合)またはCFLAGS
(Cの場合)に"-DTMMAINEXIT"
を指定し、カレント・ディレクトリにmainexit.h
を置く(または-I
インクルード・オプションを使用して他のディレクトリからインクルードする)必要があります。
たとえば、Micro Focus Cobol V3.2.xでPRN番号の最後の数字が11.03より大きい場合、共有ライブラリの使用時には、main
()のすべてのCOBOLルーチンの前で(おそらく関数プロトタイプ宣言の後で) cobinit
()を呼び出す必要があります。これを行うには、cobinit()
の呼出しが入ったmainexit.h
を作成し、上記の手順に従ってください。
ACUCOBOLコンパイラでコンパイルするサーバーに関しては、servopts(5)が特別な意味を持ちます。サーバーCLOPTパラメータのuargs ('--'の後に指定する値)は、ACUCOBOL CVMを起動するために、引数としてacu_initv()サブルーチンに渡されます。
次の例は、リソース・マネージャ(-r TUXEDO/SQL
)ライブラリをbuildserver
コマンドラインで指定する方法を示しています。
buildserver -r TUXEDO/SQL -s OPEN_ACCT -s CLOSE_ACCT -o ACCT
-f ACCT.o -f appinit.o -f util.o
次の例は、buildserver
に変数CC
およびCFLAGS
変数を与える方法、および-f
を使用してCC
行への-lm
オプションを指定して数学ライブラリをリンクする方法を示したものです。
CFLAGS=-g CC=/bin/cc buildserver -r TUXEDO/SQL -s DEPOSIT
-s WITHDRAWAL -s INQUIRY -o TLR -f TLR.o -f util.o -f -lm
次の例は、リソース・マネージャを指定せずにbuildserver
コマンドを使用する方法です。
buildserver -s PRINTER -o PRINTER -f PRINTER.o
リスト4に、一般的なCOBOLコンパイラの例を示します。
COBCPY=$TUXDIR/cobinclude
COBOPT="-C ANS85 -C ALIGN=8 -C NOIBMCOMP -C TRUNC=ANSI -C OSEXT=cbl"
COBDIR=/usr/lib/cobol
LD_LIBRARY_PATH=$COBDIR/coblib
export COBOPT COBCPY COBDIR LD_LIBRARY_PATH
buildserver -C -r TUXEDO/SQL -s OPEN_ACCT -s CLOSE_ACCT -o ACCT -f ACCT.o -f appinit.o -f util.o
リスト5に、ACUCOBOLコンパイラの例を示します。
TM_COB_STATIC=no
COB=AcuCobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8"
TM_COB_VERSION=7.2
ACUCOBOL=/opt/AcuCobol-7.2.1
TM_COB_CC_FILES="-lruncbl -lclnt -lacvt -lfsi -laregex -lacuterm -lextfh -laxml -lexpat -lvision -lesql -lacme -lz -lm"
LD_LIBRARY_PATH=$ACUCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT TM_COB_VERSION ACUCOBOL TM_COB_CC_FILES LD_LIBRARY_PATH
buildserver -C -sTOUPPER -sTOLOWER -o CSIMPSRV -f CTOUPPER.cbl -f CLOWER.cbl -f TPSVRINIT.cbl
リスト6に、IBMCOBOLコンパイラの例を示します。
TUXDIR=/opt/tuxedo10.0
TM_COB_STATIC=no
COB=IBMCobol
IBMCOBOL=/usr/lpp/cobol
COBCPY=$TUXDIR/cobinclude
COBOPT="-Ca -v -w -Ga -Dw64 -Dl8 -Da8"
LD_LIBRARY_PATH=$IBMCOBOL/lib:$TUXDIR/lib
export TUXDIR TM_COB_STATIC COB COBCPY COBOPT IBMCOBOL LD_LIBRARY_PATH
buildserver -C -sTOUPPER -sTOLOWER -o CSIMPSRV -f CTOUPPER.cbl -f CLOWER.cbl -f TPSVRINIT.cbl
buildtms(1)
、servopts(5)、UBBCONFIG(5)
お使いのオペレーティング・システムのリファレンス・マニュアルで説明するCコンパイラとリンカーに関する記述
buildTM_MQI(1)
- TM_MQI
サーバーをリンク
buildTM_MQO(1)(1)
- TM_MQO
サーバーをリンク
buildTMQUEUE_MQM(1)
- TMQUEUE_MQM
サーバーをリンク
buildTM_MQI [-v] [-r rmname] [-c] [-t] [-o outfile]
buildTM_MQO [-v] [-r rmname] [-c] [-t] [-o outfile]
buildTMQUEUE_MQM [-v] [-r rmname] [-c] [-t] [-o outfile]
これらのコマンドはそれぞれTM_MQI
、TM_MQO
、またはTMQUEUE_MQM
サーバーを作成します。デフォルトの出力場所は$TUXDIR/bin/TM_MQI
、$TUXDIR/bin/TM_MQO
、または$TUXDIR/bin/TMQUEUE_MQM
です。この場所は-o
オプションで変更できます。
これらのコマンドで作成されるサーバーは、Tuxedo MQ AdapterがIBM WebSphere MQとのやり取りに使用します(Oracle MQ Adapter for Tuxedo 10.0ユーザー・ガイドで説明されています)。
ユーザーは、サーバー出力ファイルを作成または上書きするためのパーミッションを持つ必要があります。
これらのコマンドはbuildserverを呼び出して適切なMQ Adapterサーバーを作成します。
あらかじめリンクされたオブジェクトではなく、これらのコマンドを使用してMQ Adapterサーバー・ファイルを作成することで、Tuxedo管理者は次を構成できます。
システム管理者はMQ Adapterサーバーの作成に加え、ある時点でbuildtmsを実行し、WebSphere MQ TMSサーバーを作成する必要があります。
rm_name
は、$TUXDIR/udataobj/RM
にあるリソース・マネージャ表に登録されていなければなりません。rm_name
の値に対応するエントリは、リソース・マネージャに対する正しいライブラリを自動的に組み込み、かつトランザクション・マネージャとリソース・マネージャとの間のインタフェースを正しく設定( xa_switch_t
構造体を使用して)するときに使用します。このパラメータのデフォルト値はMQSeries_XA_RMI
です。
$TUXDIR/bin/TM_MQI
、$TUXDIR/bin/TM_MQO
、または$TUXDIR/bin/TMQUEUE_MQM
です。
buildTM_MQI -v -o $TUXDIR/bin/TM_MQI
buildTM_MQO -v -o $TUXDIR/bin/TM_MQO
buildTMQUEUE_MQM -v -o $TUXDIR/bin/TMQUEUE_MQM
buildtms
- トランザクション・マネージャ・サーバーのロード・モジュールを構築
buildtms [ -v ] -o
name-r
rm_name [-z]
buildtms
はトランザクション・マネージャのロード・モジュールを構築するときに使用します。
Oracle TuxedoシステムではいくつかのTMサーバーが一緒に提供されますが、分散トランザクション処理用にOracle Tuxedoシステムとともに使用する新しいリソース・マネージャを提供することもできます。このようなリソース・マネージャは、X/OpenのXAインタフェースに準拠する必要があります。リソース・マネージャ・ベンダーは、次の4つの項目を提供しなければなりません: リソース・マネージャの名前、リソース・マネージャの機能を示すフラグ、および実際のXAの関数ポインタを収めるxa_switch_t
型の構造体の名前、xa_switch_t
構造体のname要素に格納されるリソース・マネージャの名前、XAインタフェースのサービスを提供しソフトウェアをサポートするオブジェクト・ファイルの名前、そしてUBBCONFIG
構成ファイルのパラメータOPENINFO
およびCLOSEINFO
に提供される情報文字列の形式。「UBBCONFIG(5)」を参照してください。
新しいリソース・マネージャをOracle Tuxedoシステムに統合化する際には、ファイル$TUXDIR/udataobj/RM
を更新して、そのリソース・マネージャに関する情報を組み込むようにしなければなりません。このファイルの形式は次のとおりです。
rm_name
:
rm_structure_name
:
library_names
ここで、rm_name
はリソース・マネージャの名前、rm_structure_name
はxa_switch_t
構造体の名前、およびlibrary_names
はリソース・マネージャのオブジェクト・ファイルのリストです。空白類(タブまたはスペース)は各値の前後で使用でき、library_names
の中に挿入することもできます。値の中にコロン(:
)を含めることはできません。また、シャープ(#
)で始まる行はコメントとして扱われ、無視されます。
注意: | UNIXシステムの場合はリストをコロン(:)で区切ります。Windowsシステムの場合はコロンのかわりにセミコロン(;)を使用してください。 |
新しいリソース・マネージャのトランザクション・マネージャ・サーバーはbuildtms
を使用して構築し、$TUXDIR/bin
にインストールしなければなりません。buildtms
はbuildserver(1)
コマンドを使用してa.out
を生成します。buildtms
コマンドには、以下のオプションがあります。
-v
-o
name
-r
rm_name
rm_name
は、$TUXDIR/udataobj/RM
にあるリソース・マネージャ表に登録されていなければなりません。rm_name
の値に対応するエントリは、リソース・マネージャに対する正しいライブラリを自動的に組み込み、かつトランザクション・マネージャとリソース・マネージャとの間のインタフェースを正しく設定(xa_switch_t
構造体を使用して)するときに使用します。
-z
buildtms
は、buildserver
コマンドを使用してa.out
を生成します。buildserver
は、コンパイラおよびコンパイラ・フラグに関してそれぞれCC
およびCFLAGS
環境変数を使用します(設定されている場合)。詳細については、「buildserver(1)」
を参照してください。
buildtms
は、Oracle Tuxedo ATMIまたはCORBAサーバー環境をサポートするすべてのプラットフォームで、Oracle Tuxedoシステム提供のコンパイル・ツールとしてサポートされています。RM XAライブラリは、Windowsプラットフォームではサポートされていません。
buildtms -o $TUXDIR/bin/TMS_XYZ -r XYZ/SQL # TMS for XYZ resource manager
buildwsh
- カスタマイズされたワークステーション・ハンドラ・プロセスの構築
buildwsh
[-v
] [-o
name
] [-f
files
]
buildwsh
は、カスタマイズしたOracle Tuxedo ATMIワークステーション・ハンドラ・モジュールを構築するために使用されます。呼出し側によって組み込まれるファイルは、アプリケーション・バッファ型スイッチと必要なサポート・ルーチンのみを含む必要があります。このコマンドは、-f
オプションで指定されるファイルと、必要な標準Oracle Tuxedo ATMIライブラリを組み合せて、ワークステーション・ハンドラ・ロード・モジュールを作成します。ロード・モジュールは、buildwsh
が呼び出すcc
(1)コマンドによって構築されます(コマンドの説明はUNIXシステム・リファレンス・マニュアルを参照)。buildwsh
コマンドには、以下のオプションがあります。
-v
-o
name
SERVER
セクションにおけるWSL(5)
サーバーの-w
WSHname
オプションで指定しなければなりません。指定しない場合、ロード・モジュールには、WSH
という名前が付きます。
-f
firstfiles
buildwsh
のコンパイル・フェーズやリンク・フェーズで取り込む1つまたは複数のユーザー・ファイルを指定します。ソース・ファイルは、cc
コマンドまたは環境変数CC
によって指定されたコマンドによってコンパイルされます。ソース・ファイルのコンパイルによって生成されたオブジェクト・ファイルと、-f
オプションのパラメータとして直接指定されたオブジェクト・ファイルは、基本となるワークステーション・ハンドラ・プロセスを構築するために必要なすべてのオブジェクト・ファイルの後で、かつOracle Tuxedo ATMIライブラリの前に取り込まれます。複数のファイルを指定する場合は、各ファイル名を空白で区切り、リスト全体を引用符で囲まれなければなりません。このオプションは、何回も指定することができます。
buildwsh
は通常、cc
コマンドを使用してa.out
を生成します。代替コンパイラを指定できるようにするため、buildwsh
はシェル変数CC
が存在するかどうかを調べます。CC
がbuildwsh
の環境にない場合、または変数の値が文字列""である場合は、buildwsh
はコンパイラとしてcc
を使用します。環境内にCC
が存在する場合、実行されるコンパイラの名前がCCの値となります。同様に、シェル変数CFLAGS
も、コンパイラへ渡す一連のパラメータを取り込むためにチェックされます。
アプリケーションが共有ライブラリを使用する場合は、ここで説明したコンパイルとリンクの作業をする必要はありません。『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』の型付きバッファの管理に関する項を参照してください。<Default ?Font>
buildwsh
コンパイル・ツールは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで使用できます。
CC=ncc CFLAGS=”-I $TUXDIR/include”; export CC CFLAGS buildwsh
-o APPWSH -f apptypsw.o
UNIXシステムのリファレンス・マニュアルのcc(1)、ld
(1)
cobcc
[option
. . .
]filename
. . .
cobcc
は、COBOLコンパイラに対するインタフェース・シェルとして使用します。それは、-C
(COBOL)オプションを指定してbuildclient(1)
またはbuildserver(1)
が実行された場合にはデフォルトで呼び出されます。ALTCC
環境変数を指定するとオーバーライドできます。
以下にcobcc
で指定可能なオプションを示します。これらのオプションを使用するには、buildclient
やbuildserver
を実行する際に、環境変数ALTCFLAGS
をcobcc
が認識できるオプション文字列に設定します。各オプションの詳細は、COBOLとCコンパイラのドキュメントを参照してください。
注意: | Windowsシステムでは、ALTCC およびALTCFLAGS 環境変数は使用できません。これらの変数を設定すると、予想外の結果が生じます。まずCOBOLコンパイラを使用してアプリケーションをコンパイルし、次に生成されたオブジェクト・ファイルをbuildclient(1) またはbuildserver(1) コマンドに渡す必要があります。 |
cc
やcob
とは異なりcobcc
では、すべてのオプションはファイル名の前に置かれなければなりません。
-c
-p -g -r -O
-l
argument
-L
argument
-o
output_file
-E -P -S
-A -C -H -f -G
-w
-D
argument
{-T -Y -U -I -B -X -F -q}
argument
-V -v
-a -s
-u
argument
-W
argument
p
または -0
であれば、Cコンパイラに渡されます。-a
で始まる場合には、アセンブラに渡されます。-l
で始まる場合にはローダーに渡されます。-C
で始まるのであれば、COBOLコンパイラに渡されます。それ以外の場合には、Cコンパイラに渡されます。
オプションと引数、およびファイル名は該当するオプションと共にCOBOLコンパイラに渡され、適切な情報がCOBOLコンパイラ、Cコンパイラ、あるいはローダーで処理されます。COBOLコンパイラの名前は"cob
"と想定されており、PATH
で定義されています。
『Micro Focus COBOL/2 Operating Guide』 Micro Focus Ltd.
dmadmin
—<Default ?Font>Oracle Tuxedoドメイン管理コマンド・インタプリタ。
dmadmin
[-c
]
dmadmin
は対話型のコマンド・インタプリタで、Domains構成で呼び出される特定の<Default ?Font>Oracle Tuxedoアプリケーション用に定義されたドメイン・ゲートウェイ・グループを管理するために使用します。このページでは、TDomainゲートウェイ、SNA Gateway (SNAX)およびOSI TPゲートウェイでdmadmin
を使用する方法について説明します<Default ?Font>。<Default ?Font>Oracle Tuxedo Domainsコンポーネントの詳細は、『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』を参照してください。
dmadmin
には、管理モードと構成モードの2つのモードがあります。
dmadmin
はパラメータなしで呼び出すと管理モードになります。管理モードはデフォルトのモードです。このモードでは、dmadmin
は、アクティブなアプリケーション内のアクティブなノード(ワークステーションを除く)で実行できます。アプリケーション管理者は、このモードを使用して、アクティブな任意のドメイン・ゲートウェイ・グループのパラメータを取得または変更できます。アプリケーション管理者は、このモードを使用して、特定のローカル・ドメイン・アクセス・ポイントのDomainsトランザクション・ログを作成、廃棄または再初期化することもできます。この場合、そのローカル・ドメイン・アクセス・ポイントに関連付けられたドメイン・ゲートウェイ・グループをアクティブにせず、対応するゲートウェイ・グループに関連するマシン上でdmadmin
を実行する必要があります。
dmadmin
は、-c
オプションを使用して呼び出されるか、configサブコマンドが呼び出されると、configurationモードに入ります。アプリケーション管理者は、このモードを使用して、新しい構成情報を更新したり、ドメイン構成ファイル(BDMCONFIG
)のバイナリ・バージョンに追加したりできます。
dmadmin
では、BDMCONFIG
ファイルの管理にDomains管理サーバー(DMADM
)を、アクティブなDOMAINゲートウェイ・グループの再構成にゲートウェイ管理サーバー(GWADM
)を使用する必要があります。Domains構成で起動される各<Default ?Font>Oracle Tuxedoアプリケーションに1つのDMADM
プロセスが、各ドメイン・ゲートウェイ・グループに1つのGWADM
プロセスが実行されます。
dmadmin
が呼び出された後は、次に示す構文に従って、プロンプト(">")からコマンドを入力してください。
command
[arguments
]
共通して出現するいくつかの引数には、default
コマンドを使用してデフォルト値が与えられます。default
コマンドによって設定されたパラメータを受け付けるコマンドは、default
に値が設定されているかどうかを調べます。値が設定されていない場合は、エラー・メッセージが戻されます。
一度設定したデフォルト値は、default
コマンドで変更しないかぎり、セッション終了まで有効です。このデフォルト値は、コマンドラインで明示的に値を入力してオーバーライドするか、値*
(アスタリスク)を入力して設定解除します。オーバーライドの効果は、コマンドの単一のインスタンスの間有効です。
dmadmin
コマンドからの出力は、使用しているページ別表示コマンドに従ってページ別に表示されます(後述のpaginate
サブコマンドを参照してください)。
コマンドは、完全な名前または省略形(カッコ内に示す形式)で入力できます。その後に適切な引数を指定します。大カッコ[ ]で囲まれている引数は省略可能で、中カッコ{ }で囲まれている引数は、相互に排他的な選択肢を示します。多くのコマンドでlocal_domain_access_point_name
は必須引数です。またdefault
コマンドでも設定できることに注意してください。
advertise (adv) -d
local_domain_access_point_name
[{service
}]
advertiseevent (advevt)
-d
local_domain_name_
[{-all | event
}]
-all
)または指定したイベント(指定のevent
)のリモート・ドメインへの送信を許可します。これらのイベントは、"*DM_EVT_OUT
"セクションでLACCESSPOINT
=local_domain_nameを使用して構成されます。
audit (audit) -d
local_domain_access_point_name
[{off
| on
}]
on
)にまたはアクティブ解除(off
)します。オプションが設定されていない場合は、現在の設定値がon
とoff
で切り替わり、新しい設定が表示されます。初期設定はoff
です。
chbktime (chbt) -d
local_domain_access_point_name
-t
bktime
config
(config
)
connect (co) -d
local_domain_access_point_name
[-R
remote_domain_access_point_name
]
-R
が指定されていない場合、このローカル・ドメイン・ゲートウェイに構成されているすべてのリモート・ドメイン・アクセス・ポイントに対してコマンドが適用されます。
crdmlog (crdlog)
[-d
local_domain_access_point_name
]
dmadmin
が動作しているマシン)上の指定されたローカル・ドメイン・アクセス・ポイントに対して、Domainsトランザクション・ログを作成します。このコマンドでは、DMCONFIG
ファイルで指定したパラメータが使用されます。指定のローカル・ドメイン・アクセス・ポイントに関連付けられているドメイン・ゲートウェイ・グループが現在のマシンでアクティブであるか、ログがすでに存在する場合は、このコマンドは失敗します。 注意: | OracleデータベースにログをエクスポートするためにDMCONFIG(5) DMTLOGDEV を設定すると、DMTLOG は自動的に作成されなくなります。 |
default (d)
[-d
local_domain_access_point_name
]
*
(アスタリスク)を指定すると設定を解除できます。defaultコマンドを引数なしで入力した場合は、現在のデフォルトの値が表示されます。
disconnect (dco) -d
local_domain_access_point_name
[-R
remote_domain_access_point_name
]
-R
が指定されていない場合、このローカル・ドメイン・ゲートウェイに構成されているすべてのリモート・ドメイン・アクセス・ポイントに対してコマンドが適用されます。)
dsdmlog (dsdlg) -d
local_domain_access_point_name
[ -y
]
dmadmin
が動作しているマシン)上の指定されたローカル・ドメイン・アクセス・ポイントに対して、Domainsトランザクション・ログを破棄します。このローカル・ドメイン・アクセス・ポイントにDomainsトランザクション・ログが定義されていないか、ローカル・ドメイン・アクセス・ポイントに関連付けられているドメイン・ゲートウェイ・グループがアクティブであるか、または未処理のトランザクション・レコードがログ内に存在している場合は、エラーが戻されます。「未処理のトランザクション」とは、グローバル・トランザクションがすでにコミットされているが、トランザクションの終了がまだ書き込まれていないトランザクションのことです。このコマンドは、-y
オプションを指定していない場合に確認のためのプロンプトを表示します。
echo (e)
[{off
| on}
]
forgettrans (ft) -d
local_domain_access_point_name
[ -t
tran_id
]
tran_id
が指定されている場合、そのトランザクションのヒューリスティック・ログ・レコードのみが無視されます。トランザクションの識別子tran_id
は、printtrans
コマンドまたはULOG
ファイルから取得できます。
help (h)
[command
]
indmlog (indlg) -d
local_domain_access_point_name
[ -y
]
dmadmin
が動作しているマシン)上の指定されたローカル・ドメイン・アクセス・ポイントに対して、Domainsトランザクション・ログを再初期化します。このローカル・ドメイン・アクセス・ポイントにDMTLOG
が定義されていないか、ローカル・ドメイン・アクセス・ポイントに関連付けられているドメイン・ゲートウェイ・グループがアクティブであるか、または未処理のトランザクション・レコードがログ内に存在している場合は、エラーが戻されます。「未処理のトランザクション」とは、グローバル・トランザクションがすでにコミットされているが、トランザクションの終了がまだ書き込まれていないトランザクションのことです。このコマンドは、-y
オプションを指定していない場合に確認のためのプロンプトを表示します。
paginate
(page
) [{off
| on
}]
PAGER
を使用すると、ページ別表示出力に使用されるデフォルトのコマンドをオーバーライドできます。デフォルトのページ別表示コマンドは、ネイティブのオペレーティング・システム環境に固有のコマンドです(たとえば、コマンドpg
は、UNIXシステム・オペレーティング環境のデフォルトです)。
passwd (passwd)
[ -r
] local_domain_access_point_name
remote_domain_access_point_name
-r
オプションは、既存のパスワードと新しいパスワードをシステムが生成した新しいキーを使用して暗号化することを指定します。パスワードの最大文字数は30文字に制限されています。passwd
はTDomainゲートウェイのみでサポートされます。
printdomain (pd) -d
local_domain_access_point_name
printstats (pstats) -d
local_domain_access_point_name
printtrans
(pt) -d
local_domain_access_point_name
(process ID:local domain access point name:remote domain access point name:service name:local GTRID:remote GTRID:record type:timestamp)。
トランザクションがドメインに対してローカルに実行される場合は、remote GTRID
フィールドは空になります。
quit (q)
resume (res) -d
local_domain_access_point_name
[{ -all
| service
}]
stats (stats) -d
local_domain_access_point_name
[{ off
| on
| reset
}]
on
)、アクティブ解除(off
)または再設定(reset
)します。オプションを何も指定しない場合は、現在の設定値がon
とoff
で切り替わり、新しい設定が表示されます。初期設定はoff
です。
suspend (susp) -d
local_domain_access_point_name
[{ -all
| service
}]
topendpasswd (tepasswd)
[ -r
]
unadvertise (unadv) -d
local_domain_access_point_name
[{ -all
| service
}]
unadvertiseevent (unadvevt) -d
local_domain_name
_[{-all | event
}]
-all
)または指定したイベント(指定のevent
)のリモート・ドメインへの送信を禁止します。これらのイベントは、"*DM_EVT_OUT
"セクションでLACCESSPOINT
=local_domain_nameを使用して構成されます。
verbose (v)
[{off
| on}
]
!
shellcommand
!!
#
[text
]
<CR>
dmadmin
コマンドは、-c
オプションで実行するか、config
サブコマンドを使用すると構成モードになります。このモードでは、dmadmin
を使用して、BDMCONFIG
ファイルの実行時更新を行うことができます。dmadmin
は、追加または取得される入力フィールド値を含むバッファを管理し、各処理が終了すると出力フィールド値とステータスを表示します。ユーザーは任意のテキスト・エディタを使用して入力バッファを更新できます。
dmadmin
はまず希望のセクションを求めるプロンプトを表示し、次に希望の操作を求めるプロンプトを表示します。
BDMCONFIG
ファイルのセクションを求めるプロンプトは次のとおりです。
Section:
1) RESOURCES 2) LOCAL_DOMAINS
3) REMOTE_DOMAINS 4) LOCAL_SERVICES
5) REMOTE_SERVICES 6) ROUTING
7) ACCESS_CONTROL 8) PASSWORDS
9) TDOMAINS 10) OSITPS
11) SNADOMS 12) LOCAL_REMOTE_USER
13) REMOTE_USERS 14) SNACRMS
15) SNASTACKS 16) SNALINKS
19) OSITPX
20) EVENTS_IN 21) EVENTS_OUT
q) QUIT
Enter Section [1]:
デフォルト・セクションの番号は、プロンプトの終わりに大カッコ内に表示されます。デフォルトの値を受け入れるときは、[RETURN
]または[Enter
]を押します。別のセクションを選択するときは、その番号を入力して[RETURN
]または[Enter
]を押します。
次にdmadmin
は、希望の操作を求めるプロンプトを表示します。
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [1]:
デフォルトの操作番号がプロンプトの終わりの大カッコ内に表示されます。[RETURN
]または[Enter
]を押してこのオプションを選択します。別の操作を選択するときは、その番号を入力して[RETURN
]または[Enter
]を押します。
FIRST
- 指定されたセクションの最初のレコードを表示します。キー・フィールドは必要ありません(入力バッファに格納されていても、無視されます)。継続
- 入力バッファ内のキー・フィールドに基づいて、指定したセクションから次のレコードを取り出します。照会
- キー・フィールドで指定されたセクションから、指定されたレコードを取り出します。以下のフィールドの説明を参照してください。ADD
- 指定したセクションに、指定したレコードを追加します。フィールドが指定されていない場合(フィールドが不要である場合にかぎり)、DMCONFIG(5)で指定されたデフォルト値が使用されます。すべてのフィールドの現在の値は、出力バッファ内に戻されます。この操作は、Oracle Tuxedo管理者だけが行えます。UPDATE
- 指定したセクションの入力バッファ内にある、指定したレコードを更新します。入力バッファ内で指定されていないフィールドは変更されません。すべてのフィールドの現在の値は、入力バッファ内に戻されます。この操作は、Oracle Tuxedo管理者だけが行えます。DELETE
- 入力バッファで指定したレコードを、選択したセクションから削除します。この操作は、Oracle Tuxedo管理者しか実行できません。NEW SECTION
- 入力バッファをクリアします(すべてのフィールドは削除されます)。この操作の直後に、dmadmin
によって再度セクションを指定するように求められます。QUIT
- プログラムを正常に終了します(dmadmin
は終了します)。プロンプトで値q
を入力してもプログラムを終了できます。 構成操作を行う場合は、有効なユーザー識別子は、このプログラムが実行されるマシンのOracle Tuxedo管理者ユーザー識別子(UID
)と一致している必要があります。レコードの更新や追加を行う場合には、dmloadcf(1)
が使用する検証機能とすべてのデフォルト値が有効になります。
dmadmin
は次に、入力バッファを編集するかどうかをたずねるプロンプトを表示します。
Enter editor to add/modify fields [n]?
値y
を入力すると、入力バッファが一時ファイルに変換され、テキスト・エディタが実行されます。環境変数EDITOR
を使用して、使用するエディタを決定します。デフォルト値はed
(UNIXテキスト・エディタ)です。入力フォーマットは、一連のフィールド名とフィールド値の組合せです。「構成入力フォーマット」を参照してください。その後の項の表に、各DMCONFIG
セクションに関連付けられているフィールド名を示します。フィールドのセマンティクスと、関連する範囲、デフォルト値、制限などは、DMCONFIG(5)およびDM_MIB(5)に関する項目を参照してください。多くの場合、フィールド名はDMCONFIG
ファイルのKEYWORD
と同じで、接頭辞として「TA_
」が付いています。ユーザーが入力バッファの編集を完了すると、dmadmin
はその内容を読み取ります。特定のフィールド名に対して複数の行がある場合、最初の行が使用され、他の行は無視されます。何らかのエラーが発生すると、構文エラー・メッセージが表示され、その問題の訂正のためにファイルを編集するかどうかを確認するプロンプトが表示されます。
Enter editor to correct?
問題を訂正しない場合(レスポンスn
)は、入力バッファにフィールドは含まれません。問題を訂正する場合は、エディタが再度実行されます。
最後に、操作を行うかどうかをたずねるプロンプトが表示されます。
Perform operation [y]?
操作が完了すると、dmadmin
は「戻り値TAOK」
のように戻り値を表示し、続いて出力バッファのフィールドを表示します。次に、プロセスが再開され、セクションを求めるプロンプトが表示されます。すべての出力バッファ・フィールドは、バッファがクリアされないかぎり、入力バッファ内で利用できます。
いつでもブレークを入力して、セクションを求めるプロンプトでの対話を再開できます。
"QUIT"
を選択すると、テキスト・バージョンの構成ファイルのバックアップを作成する認可を求めるプロンプトが表示されます。
Unload BDMCONFIG file into ASCII backup [y]?
バックアップを選択した場合、ファイル名の入力を求めるプロンプトが表示されます。
成功時にはバックアップが作成されたことが示され、失敗時にはエラーが表示されます。
入力パケットは、次のようにフォーマットされた行で構成されます。
fldname fldval
フィールド名は、1つまたは複数のタブ(または空白)によってフィールド値と区別されます。
長いフィールド値は、1つまたは複数のタブ(dmadmin
に再度読み込まれたときに破棄されます)で始まる継続行を使用することで、次の行に継続できます。
表示できない文字をフィールド値に入力したり、タブをフィールド値の先頭に付けたりするには、バックスラッシュを入力し、その後に必要な文字を2文字の16進表現で入力します(UNIXリファレンス・マニュアルでASCII
(5)の項を参照)。たとえば、空白は「\20」として入力データに入力できます。バックスラッシュそのものは、2つのバックスラッシュ記号を使用して入力できます。dmadmin
では、このフォーマットのすべての入力が認識されます。このフォーマットは表示できない文字の場合に最も役立ちます。
次に動的Domainsを再構成する機能についての全般的な制限事項を示します。
<Default ?Font>Oracle Tuxedoのリリース7.1以降では、ドメイン関連の用語の一部が変更されました。Domains用のMIBでは、新しいクラスおよび属性の用語を使用して、ローカル・ドメインとリモート・ドメイン間の相互作用を記述しています。新しい用語は、DM_MIB
のリファレンス・ページ、クラスおよびエラー・メッセージや、DMCONFIG
のリファレンス・ページ、セクション名、パラメータ名およびエラー・メッセージで使用されています。新しい用語はdmadmin
のユーザー・インタフェースには適用されていませんが、dmadmin
はDMCONFIG
の従来の用語と新しい用語の両方を認識します。
後方互換性のため、Oracle Tuxedo 7.1より前に使用されていたDMCONFIG
用語とDomains用のMIBの新しい用語との間で別名が提供されています。Oracle Tuxedoリリース7.1以降のdmadmin
では、両方のバージョンのDMCONFIG
用語を使用できます。詳細は、DM_MIB(5)リファレンス・ページの「Domains関連の新しい用語」を参照してください。
この後では、各DMCONFIG
について、どのフィールド識別子が各DMCONFIG
フィールドに関連しているか、識別子のフィールド・タイプは何か、およびいつフィールドを更新できるかを説明しています。適用可能なフィールド値はすべて、取出し操作によって返されます。レコードを追加できるフィールド、またはレコードを追加するために必要なフィールドについては、「DMCONFIG(5)」および「DM_MIB(5)」に関する項で説明しています。次にキー
として示すフィールドは、セクション内のレコードを一意に識別するために使用するキー・フィールドです。これらのキー・フィールドは、更新を行うとき入力バッファ内になければならないほか、動的に更新することができません。更新
列は、どのようなときにフィールドを更新できるかを示しています。使用できる値は次のとおりです。
表4に、DM_LOCAL
セクション(DM_LOCAL_DOMAINS
セクション)のフィールド一覧を示します。dmadmin
操作のプロンプトでこのセクションにアクセスするには、2 (LOCAL_DOMAINS)を入力します。
表5に、DM_REMOTE
セクション(DM_REMOTE_DOMAINS
セクション)のフィールド一覧を示します。dmadmin
操作のプロンプトでこのセクションにアクセスするには、2 (REMOTE_DOMAINS)を入力します。
DM_TDOMAIN
セクションには、TDOMAIN
タイプ・ドメインが必要とするネットワーク・アドレッシング・パラメータが含まれています。表6に、このセクションのフィールドの一覧を示します。
ローカル・ドメイン・アクセス・ポイント識別子(TA_LDOM
)の場合、TA_NWADDR
フィールドおよびTA_NWDEVICE
フィールドは、そのローカル・ドメイン・アクセス・ポイントに関連付けられたゲートウェイ・グループが実行中でないときに更新できます。
DM_OSITP
セクションには、OSITP
タイプ・ドメインが必要とするOSI TP 1.3対応のネットワーク・アドレッシング・パラメータが含まれています。表7に、このセクションのフィールドの一覧を示します。
ローカル・ドメイン・アクセス・ポイント識別子(TA_LDOM
)の場合、この表に記載されていないフィールドは、そのローカル・ドメイン・アクセス・ポイントに関連付けられたゲートウェイ・グループが実行中でないときに更新できます。
DM_OSITPX
セクションには、OSITPX
タイプ・ドメインが必要とするOSI TP 4.0以降に対応するネットワーク・アドレッシング・パラメータが含まれています。表8に、このセクションのフィールドの一覧を示します。
注意: | DM_OSITPX セクションは、Oracle Tuxedoリリース8.0以降が動作していないと使用できません。 |
ローカル・ドメイン・アクセス・ポイント識別子(TA_LDOM
)の場合、この表に記載されていないフィールドは、そのローカル・ドメイン・アクセス・ポイントに関連付けられたゲートウェイ・グループが実行中でないときに更新できます。
表9に、DM_EXPORT
セクション(DM_LOCAL_SERVICES
セクション)のフィールド一覧を示します。dmadmin
操作のプロンプトでこのセクションにアクセスするには、4 (LOCAL_SERVICES)を入力します。
表10に、DM_IMPORT
セクション(DM_REMOTE_SERVICES
セクション)のフィールド一覧を示します。dmadmin
操作のプロンプトでこのセクションにアクセスするには、2 (REMOTE_SERVICES)を入力します。
表11に、DM_EVT_IN
セクションのフィールドを示します。
注意: | すべてのFIELDS定義は、$TUXDIR/udataobj/dmadminおよび$TUXDIR/udataobj/dmadmin32内で定義されています。 |
表12に、DM_EVT_OUT
セクションのフィールドを示します。
注意: | すべてのFIELDS定義は、$TUXDIR/udataobj/dmadminおよび$TUXDIR/udataobj/dmadmin32内で定義されています。 |
表13に、DM_ROUTING
セクションのフィールドの一覧を示します。
表14に、DM_ACCESS_CONTROL
セクションのフィールドの一覧を示します。
表15に、DM_PASSWORDS
セクションのフィールドの一覧を示します。このセクションは、TDomainゲートウェイにのみ適用されます。
TA_LPWD
およびTA_RPWD
は、ローカル・ドメイン・アクセス・ポイントまたはリモート・ドメイン・アクセス・ポイント(あるいはその両方)について定義済のパスワードがあるかどうかを示します。パスワードは表示されません。UPDATE
操作を選択した場合は、対応するフィールドの値をU
に設定する必要があります。この場合、エコーがオフになり、対応するパスワードの入力を求めるプロンプトが表示されます。
dmadmin
は、FML型付きバッファを割当てできない場合、ユーザーの/etc/passwd
エントリを判別できない場合、または環境変数FIELDTBLS
またはFLDTBLDIR
を再設定できない場合に失敗します。
各操作の完了後、dmadmin
によって表示される戻り値は、リクエストされた操作のステータスを示します。戻り値には3つのクラスがあります。
次の戻り値は、権限に関する問題またはOracle Tuxedoの通信エラーを示しています。戻り値は、操作が正常に完了しなかったことを示しています。
TAEPERM
]
ADD
、UPDATE
またはDELETE
のいずれかの操作が指定されましたが、Oracle Tuxedo管理者として実行されていません。更新操作は管理者(つまり、TUXCONFIG
ファイルのRESOURCES
セクションのUID
属性で指定されたユーザー)が実行する必要があります。
TAESYSTEM
]
TAEOS
]
TAETIME
]
以下の戻り値は、処理そのものの実行に問題があることを示します。通常は、入力バッファ内のアプリケーション・データに関するセマンティクスの問題です。文字列フィールドTA_STATUS
が出力バッファに設定されます。このフィールドは、問題を説明する短いテキストを含みます。文字列フィールドTA_BADFLDNAME
に、問題を引き起こした値が含まれるフィールドの名前が設定されます(エラーが1つのフィールドに関係している場合)。
TAECONFIG
]
TAEDUPLICATE
]
TAEINCONSIS
]
TAENOTFOUND
]
TAENOSPACE
]
TAERANGE
]
TAEREQUIRED
]
TAESIZE
]
TAEUPDATE
]
TAOK
]
TAUPDATED
]
dmunloadcf
を使用して構成のエントリを表示するとき、オプションのフィールド値は、値が設定されていない(文字列の場合)か0 (整数の場合)の場合には表示されません。これらのフィールドは、dmadmin
を使用するときに、出力バッファ内に常に表示されます。この方法で、管理者がエントリを取り出しやすくし、また以前に設定されていないフィールドを更新しやすくします。エントリには、フィールド名が含まれ、タブが後に続きますが、フィールド値はありません。
次の例では、dmadmin
を使用して新しいリモート・ドメイン・アクセス・ポイントを追加します。ed(1)
がエディタとして使用されます。
$ EDITOR=ed dmadmin
> config
Sections:
1) RESOURCES 2) LOCAL_DOMAINS
3) REMOTE_DOMAINS 4) LOCAL_SERVICES
5) REMOTE_SERVICES 6) ROUTING
7) ACCESS_CONTROL 8) PASSWORDS
9) TDOMAINS 10) OSITPS
11) SNADOMS 12) LOCAL_REMOTE_USER
13) REMOTE_USERS 14) SNACRMS
15) SNASTACKS 16) SNALINKS
19) OSITPX
q) QUIT
Enter Section [1]:
Enter Section [1]: 2
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [1]: 4
Enter editor to add/modify fields [n]? y
a
TA_RDOM B05
TA_DOMAINID BA.BANK05
TA_TYPE TDOMAIN
.
w
53
q
Perform operation [y]? <return>
Return value TAUPDATED
Buffer contents:
TA_OPERATION 4
TA_SECTION 2
TA_DOMAINID BA.BANK05
TA_RDOM B05
TA_TYPE TDOMAIN
TA_STATUS Update completed successfully
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [4]: 7
Section:
1) RESOURCES 2) LOCAL_DOMAINS
3) REMOTE_DOMAINS 4) LOCAL_SERVICES
5) REMOTE_SERVICES 6) ROUTING
7) ACCESS_CONTROL 8) PASSWORDS
9) TDOMAINS 10) OSITPS
11) SNADOMS 12) LOCAL_REMOTE_USER
13) REMOTE_USERS 14) SNACRMS
15) SNASTACKS 16) SNALINKS
19) OSITPX
q) QUIT
Enter Section [1]: 9
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [6]: 4
Enter editor to add/modify fields [n]? y
a
TA_RDOM B05
TA_NWADDR 0x00020401c0066d05
TA_NWDEVICE /dev/tcp
.
w
55
q
Perform operation [y]? <return>
Return value TAUPDATED
Buffer contents:
TA_OPERATION 4
TA_SECTION 8
TA_RDOM B05
TA_NWADDR 0x00020401c0066d05
TA_NWDEVICE /dev/tcp
TA_STATUS Update completed successfully
Operations:
1) FIRST 2) NEXT
3) RETRIEVE 4) ADD
5) UPDATE 6) DELETE
7) NEW_SECTION 8) QUIT
Enter Operation [4]: 8
> quit
dmadmin
がアプリケーション管理者のUID
を使用して実行された場合、信頼性のあるユーザーであると想定され、セキュリティはバイパスされます。dmadmin
が別のユーザーIDで実行された場合、およびセキュリティ・オプションがTUXCONFIG
ファイル内で使用可能になっている場合は、dmadmin
プログラムを開始するための対応するアプリケーション・パスワードが必要です。標準入力が端末である場合、dmadmin
はエコーをオフの状態でユーザーにパスワードの入力を求めます。標準入力が端末でない場合は、パスワードは環境変数APP_PW
から取り出されます。この環境変数が指定されていないときに、アプリケーション・パスワードが必要な場合は、dmadmin
を開始できません。
別のユーザーID (管理者のUID以外)で実行中の場合、制限されたセットのコマンドしか使用できません。
dmadmin
は環境変数FIELDTBLS
およびFLDTBLDIR
を再設定して、${TUXDIR}/udataobj/dmadmin
フィールド表をピックアップします。このため、TUXDIR
環境変数は適切に設定する必要があります。
アプリケーションでセキュリティが必要なときに、dmadmin
への標準入力が端末からではない場合、APP_PW
環境変数は対応するアプリケーション・パスワードに設定する必要があります。
TUXCONFIG
環境変数は、Oracle Tuxedo構成ファイルのパス名に設定する必要があります。
dmadmin
コマンドをシステムがブートする前に入力すると、次のメッセージが表示されます。
No bulletin board exists. Only logging commands are available.
次にdmadmin
は、対応するコマンドを求めるプロンプトを表示します。
正しくないアプリケーション・パスワードが入力されるか、環境を通してシェル・スクリプトで利用できない場合、ログ・メッセージが生成され、次のメッセージが表示されてコマンドが終了します。無効なパスワードが入力されました。
dmadmin
は、Oracle Tuxedoリリース5.0以降にインストールする必要があります。リリース5.0のゲートウェイが存在するドメイン内の他のマシンの場合は、Oracle Tuxedoリリース4.1以降でもかまいません。
dmadmin
管理ツールは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで使用できます。
dmloadcf(1)
、tmadmin(1)
、DMADM(5)、DMCONFIG(5)
『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』<Default ?Font>
『ATMIアプリケーションでのOracle Tuxedo TOP END Domain Gatewayの使用』<Default ?Font>
dmloadcf
- DMCONFIG
ファイルを解析し、バイナリのBDMCONFIG
構成ファイルをロード
dmloadcf [-c] [-n] [-y] [-b
blocks
] {
DMCONFIG_file
| - }
dmloadcf
は、ファイルまたはDMCONFIG
構文による標準入力を読み取り、構文をチェックして、オプションでバイナリのBDMCONFIG
構成ファイルをロードします。BDMCONFIG
環境変数は、情報の格納先となるBDMCONFIG
ファイルのパス名を指しています。
dmloadcf
は、DMCONFIG
ファイルの必要なセクションがないことを検出すると、エラー・メッセージをプリントします。入力ファイルを構文解析しているときに構文エラーを検出すると、dmloadcf
はBDMCONFIG
ファイルを更新せずに終了します。
dmloadcf
を使用する場合は、$TUXDIR/udataobj/DMTYPE
ファイルが存在していなければなりません。このファイルは有効なドメイン・タイプを定義します。このファイルが存在しないと、dmloadcf
はBDMCONFIG
ファイルを更新せずに終了します。
dmloadcf
を使用するユーザーの実効ユーザー識別子は、TUXCONFIG
ファイルのRESOURCES
セクションのUID
と一致していなければなりません。
dmloadcf
にオプション-c
を付けると、プログラムはこの構成に含まれるローカル・ドメイン(ゲートウェイ・グループ)ごとに必要とされる最小限のIPCリソースを表示します。BDMCONFIG
ファイルは更新されません。
dmloadcf
に-n
オプションを付けると、プログラムはテキスト形式のDMCONFIG
ファイルの構文チェックだけを行い、BDMCONFIG
ファイルの更新は行いません。
構文チェックの後、dmloadcf
は、環境変数BDMCONFIG
が参照するファイルが存在するかどうか、存在する場合はそのファイルが有効なOracle Tuxedoファイルであるかどうか、およびBDMCONFIG
表を含んでいるかどうかを調べます。これらの条件が真でなかった場合、そのユーザーにはファイルを作成して初期化するよう、次のような指示が出されます。
BDMCONFIGファイルを初期化しますか
: path
[y, q]?
path
は、BDMCONFIG
ファイルの完全なファイル名です。標準入力および標準出力が端末に送られない場合、またはコマンドラインで-y
オプションが指定されている場合は、このプロンプトは表示されません。このプロンプトに対して「y」
または「Y」
以外で答えると、dmloadcf
はバイナリの構成ファイルを作成せずに終了します。
BDMCONFIG
ファイルが正しく初期化されない場合、BDMCONFIGファイルを初期化しますか
というプロンプトの後でユーザーがy
を入力すると、dmloadcf
はOracle Tuxedoファイル・システムを作成し、BDMCONFIG
表を作成します。-b
オプションがコマンドラインに指定されると、その引数により、Oracle Tuxedoファイル・システムの作成時にデバイスのブロック数が定義されます。-b
オプションの値が新しいBDMCONFIG
表を収容できるほど大きい場合、dmloadcf
は、指定された値を使用して新しいファイル・システムを作成します。それ以外の場合、dmloadcf
はエラー・メッセージを出力して終了します。-b
オプションが指定されない場合、dmloadcf
は、BDMCONFIG
を収容できるだけ大きい新しいファイル・システムを作成します。ファイル・システムがすでに存在している場合、-b
オプションは無視されます。BDMCONFIG
がrawデバイス(初期化されていないデバイス)の場合は、-b
オプションを強く推奨します。その場合、rawデバイスのブロック数を設定するために-b
を使用してください。BDMCONFIG
が通常のUNIXファイルである場合には、-b
オプションは使用しないようにしてください。
BDMCONFIG
ファイルがすでに初期化されていることがわかると、dmloadcf
は、BDMCONFIG
ファイルで記述されているローカル・ドメインが動作していないことを確認します。ローカル・ドメインが動作している場合は、dmloadcf
がエラー・メッセージをプリントして終了します。そうでない場合、dmloadcf
は、ファイルを上書きするかどうかを確認するため、次のプロンプトを表示します:
“Really overwrite BDMCONFIG
file [y, q]?”
標準入力または標準出力が端末でない場合、または-y
オプションをコマンドラインで指定した場合、このプロンプトは表示されません。このプロンプトに対して「y」
または「Y」
以外で答えると、dmloadcf
はファイルを上書きせずに終了します。
SECURITY
パラメータがTUXCONFIG
ファイルのRESOURCES
セクションに指定されると、dmloadcf
は、標準入力をフラッシュし、端末エコーをオフにし、ユーザーにアプリケーション・パスワードの入力を求めます(「アプリケーション・パスワードを入力してください」
)。パスワードは30文字までに制限されています。ファイルではなく標準入力を介してテキスト形式のDMCONFIG
ファイルをロードするオプションは、このSECURITY
パラメータがオンのときには使用できません。標準入力が端末でない場合、つまり、ユーザーにパスワードの入力を求めることができない場合(たとえば、here
ファイルの場合)、アプリケーション・パスワードの設定のために環境変数APP_PW
が参照されます。APP_PW
環境変数が設定されておらず、標準入力が端末でない場合には、dmloadcf
はエラー・メッセージを出し、ログ・メッセージを生成して、BDMCONFIG
ファイルのロードに失敗します。
エラーが発生せず、チェックの結果がすべて条件を満たしていると、dmloadcf
はDMCONFIG
ファイルをBDMCONFIG
ファイルにロードします。BDMCONFIG
表内に存在するすべての情報は上書きされます。
<Default ?Font>Oracle Tuxedoのリリース7.1以降では、ドメイン関連の用語の一部が変更されました。Domains用のMIBでは、新しいクラスおよび属性の用語を使用して、ローカル・ドメインとリモート・ドメイン間の相互作用を記述しています。新しい用語は、DM_MIB
のリファレンス・ページ、クラスおよびエラー・メッセージや、DMCONFIG
のリファレンス・ページ、セクション名、パラメータ名およびエラー・メッセージで使用されています。詳細は、DM_MIB(5)リファレンス・ページの「Domains関連の新しい用語」を参照してください。
後方互換性のため、Oracle Tuxedo 7.1より前に使用されていたDMCONFIG
用語と<Default ?Font>Domains用のMIBの新しい用語との間で別名が提供されています。<Default ?Font>Oracle Tuxedo 7.1以降では、dmloadcf
は両方のDMCONFIG
用語を使用できます。dmunloadcf
は、デフォルトで新しいドメイン関連の用語を使用するDMCONFIG
ファイルを生成します。以前のドメイン関連の用語を使用するDMCONFIG
ファイルを生成するには、dmunloadcf
の-c
オプションを使用します。
dmloadcf
管理ツールは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで使用できます。
BDMCONFIG
環境変数は、BDMCONFIG
ファイルを指していなければなりません。
次の例は、バイナリの構成ファイルを、テキスト形式ファイルのbank.dmconfig
からロードする方法を示しています。ブロック数が2000のBDMCONFIG
デバイスが作成(または初期化)されます。
dmloadcf -b 2000 bank.dmconfig
入力にエラーが検出されると、エラーの原因となった行が、問題を指摘するメッセージとともに、標準エラーにプリントされます。DMCONFIG
ファイルに構文エラーが見つかったり、システムが稼働中の場合は、BDMCONFIG
ファイルの情報は更新されず、dmloadcf
は終了コード1で終了します。
dmloadcf
をアクティブなノード上で実行すると、次のエラー・メッセージが表示されます。
*** dmloadcf cannot run on an active node ***
dmloadcf
を実行するユーザーの実効ユーザー識別子が、TUXCONFIG
ファイルで指定されたUID
と一致しない場合は、次のエラー・メッセージが表示されます。
*** UID is not effective user ID ***
dmloadcf
が正しく完了すると、終了コード0で終了します。BDMCONFIG
ファイルが更新されると、このイベントを記録するためのuserlog
メッセージが生成されます。
dmunloadcf(1)
、DMCONFIG(5)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』<Default ?Font>
『ATMIアプリケーションでのOracle Tuxedo TOP END Domain Gatewayの使用』<Default ?Font>
dmunloadcf
- バイナリのBDMCONFIG
Domains構成ファイルをアンロード
dmunloadcf [-c]
dmunloadcf
は、BDMCONFIG
構成ファイルをバイナリ表現からテキストに変換します。この変換処理は、バイト・オーダーが異なるマシン間でファイルを簡潔に移送したり、ファイルのバックアップ・コピーを簡潔に作成して信頼性を高める場合に役立ちます。テキスト形式については、DMCONFIG(5)で説明した内容と同じです。
dmunloadcf
は、BDMCONFIG
環境変数が参照するBDMCONFIG
ファイルから値を読み取り、その値を標準出力に書き込みます。
Oracle Tuxedoリリース7.1以降では、dmunloadcf
は、デフォルトで新しいドメイン関連の用語を使用するDMCONFIG
ファイルを生成します。詳細は、次の「Domains関連の新しい用語」を参照してください。以前のドメイン関連の用語を使用するDMCONFIG
ファイルを生成するには、-c
オプションを使用します。
<Default ?Font>Oracle Tuxedoのリリース7.1以降では、ドメイン関連の用語の一部が変更されました。Domains用のMIBでは、新しいクラスおよび属性の用語を使用して、ローカル・ドメインとリモート・ドメイン間の相互作用を記述しています。新しい用語は、DM_MIB
のリファレンス・ページ、クラスおよびエラー・メッセージや、DMCONFIG
のリファレンス・ページ、セクション名、パラメータ名およびエラー・メッセージで使用されています。詳細は、DM_MIB(5)リファレンス・ページの「Domains関連の新しい用語」を参照してください。
旧バージョンとの互換性のため、Oracle Tuxedo 7.1より前に使用されたDMCONFIG
用語と、新しいDomains用のMIB用語との間に別名が提供されています。Oracle Tuxedo 7.1以降では、dmloadcf
は両方のDMCONFIG
用語を使用できます。dmunloadcf
は、デフォルトで新しいドメイン関連の用語を使用するDMCONFIG
ファイルを生成します。以前のドメイン関連の用語を使用するDMCONFIG
ファイルを生成するには、dmunloadcf
の-c
オプションを使用します。
dmunloadcf
コマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
次の例は、/usr/tuxedo/BDMCONFIG
の構成を、bdmconfig.backup
ファイルにアンロードする方法を示しています。
BDMCONFIG=/usr/tuxedo/BDMCONFIG dmunloadcf > bdmconfig.backup
dmunloadcf
は、BDMCONFIG
環境変数が指すファイルが存在しているかどうか、そのファイルがOracle Tuxedoシステムの有効なファイル・システムであるかどうか、そしてそのファイルにBDMCONFIG
表が入っているかどうかをチェックします。これらの条件が1つでも満たされないと、dmunloadcf
はエラー・メッセージをプリントして、エラー・コード1で終了します。dmunloadcf
が正しく完了すると、終了コード0で終了します。
『Oracle Tuxedo Oracle Tuxedo Domainsコンポーネントの使用』<Default ?Font>
『ATMIアプリケーションでのOracle Tuxedo TOP END Domain Gatewayの使用』<Default ?Font>
gencat
- フォーマットされたメッセージ・カタログを生成
gencat [-m]
catfile msgfile
. . .
gencat
ユーティリティは、メッセージ・テキストのソース・ファイルmsgfile
をフォーマットされたメッセージ・データベースcatfile
にマージします。このデータベースがなければ、データベースcatfile
が作成されます。catfile
が存在する場合には、そのメッセージが新しいcatfile
に組み込まれます。セット番号とメッセージ番号が矛盾する場合には、msgfile
に定義されている新しいメッセージ・テキストがcatfile
に現在格納されている古いメッセージ・テキストと置き換わります。gencat
に入力されるメッセージ・テキストのソース・ファイルには、セット番号とメッセージ番号、あるいはメッセージ番号のみ(この場合、セットNL_SETD
(「nl_types(5)」を参照)が想定されます)のいずれかを収めることができます。
メッセージ・テキストのソース・ファイルの形式は、次のように定義されています。ただし、メッセージ・テキストのソース行のフィールドは1つのASCIIの空白またはタブ文字で区切ります。その他のASCIIの空白やタブは、次のフィールドの一部とみなされます。
$set
n
comment
n
は、$set
、$delset
、またはファイルの終わりが現れるまで、次のメッセージのセット識別子を指定します。n
は、一定の範囲内(1-{NL_SETMAX
})の数である必要があります。単一のソース・ファイル内のセット識別子は、連続している必要はありません。セット識別子に続く文字列はすべてコメントとして扱われます。$set
ディレクティブがメッセージ・テキスト・ソース・ファイルに指定されない場合、すべてのメッセージはデフォルトのメッセージ・セットに含まれます。NL_SETD
。
$delset
n
comment
$
comment
m
message_text
m
はメッセージ識別子で、これは範囲(1-{NL_MSGMAX
})内の番号です。このメッセージ・テキストの構文と、「注意」
で説明する-m
コマンドライン・オプションの構文とを混同しないようにしてください。メッセージ・テキストは、セット識別子が最後の$set
ディレクティブによって指定され、かつメッセージ識別子がm
である状態でメッセージ・カタログに格納されます。メッセージ・テキストが空で、ASCIIの空白またはタブ・フィールド区切り文字があると、空の文字列がメッセージ・カタログに格納されます。メッセージ・ソース行にメッセージ番号があっても、フィールド区切り文字もメッセージ・テキストもない場合は、その番号を持つメッセージ(ある場合)がカタログから削除されます。メッセージ識別子は必ずしも連続している必要はありません。メッセージ・テキストの長さは、範囲(0-{NL_TEXTMAX
})内とします。
$quote
c
c
を指定します。この文字は、後続のスペースやnull (空)メッセージをメッセージ・ソース行で見分けやすいようにメッセージ・テキストを囲むときに使用できます。デフォルトでは、あるいは空の$quote
ディレクティブが指定された場合は、メッセージ・テキストの引用は認識されません。メッセージ・テキスト・ソース・ファイルの空の行は無視されます。テキスト文字列は、次の表に定義する特殊な文字とエスケープ・シーケンスを含むことができます。
エスケープ・シーケンス\ddd
は、円マークとそれに続く1、2または3桁の8進数からなり、目的の文字の値を指定します。円マークに続く文字が指定されたものの1つでない場合には、円マークは無視されます。
円マークの次にASCIIの改行文字を使用して、文字列を次の行に継続させることもできます。たとえば、次の2行は1つのメッセージ文字列を表しています。
1 This line continues \
to the next line
1 This line continues to the next line
gencat
は、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
このバージョンのgencat
で生成されるカタログは、malloc
された領域に実行時に読み込まれます。gencat
の一部のバージョンで使用できる共有カタログは使用できません。システムによっては、malloc
されるカタログの生成には-m
オプションを指定する必要があります。このオプションはコマンドラインに指定できますが、効果はありません。malloc
されるカタログはデフォルトです。-m
オプションは互換性を維持するためだけにサポートされます。
このコマンドで生成されるカタログ・ファイルのサイズは64Kまでに限定されています。それ以上のサイズになるような場合には、このコマンドからエラーが報告され、カタログ・ファイルは生成されません。
genicf [options]
idl-filename
...
idl-filename
(
s
)
が指定されると、ICFファイルが生成されます。このファイルでは、コード生成プロセスだけでなく、実装のポリシーに関する情報や、実装と実装するインタフェースとの関係が提供されます。ICFファイルがidl
コマンドの入力として提供されると、idl
コマンドは、ICFファイルに指定された実装/インタフェースのペアに対してサーバー・コードを生成します。
生成されるICFファイルのファイル名は、コマンドラインで指定する最初のidl-filename
と同じですが、拡張子は.icf
になります。
間違ったOMG IDL構文でidl-filename
(
s
)
を指定すると、それに応じたエラーが返されます。
-D
identifier
=[
definition
]
#define
と同じ働きをします。つまり、-D
オプションは、定義ファイル内にある特定の識別子のかわりに使用するトークン文字列またはマクロを定義します。definitionが指定されていない場合、identifierは1に定義されます。複数の-D
オプションを指定できます。-D
オプションとidentifierの間の空白は省略できます。
-I
pathname
#include
で指定するディレクトリのほか、インクルード・ファイルを検索するディレクトリを指定します。複数のディレクトリを指定する場合は、複数の-I
オプションを指定します。
#include
には、システム(<a.idl>
など)とユーザー("a.idl
"など)の2種類があります。UNIXシステムでは、システムの#include
ディレクトリのパスは、/usr/include
と、-I
オプションで指定されるすべてのディレクトリです。ユーザー・ディレクティブ#include
のパスは、#include
ディレクティブを含むファイルの場所と、その後に続く、システム・ディレクティブ#include
に指定されたパスで構成されます。Windows 2003システムでは、システムの#include
ディレクトリとユーザー・ディレクティブ#include
の区別はありません。
-hおよび -?
次のコマンドは、emp.icf
ファイルを作成します。 genicf emp.idl
idl - Object Management Group (OMG)のインタフェース定義語ファイルをコンパイルし、インタフェースに必要なファイルを生成
idl [-i] [-Didentifier
[=value
]] [-Ipathname
][-h] [-P] [-T]idl-filename
... [icf-filename
...]
提供されているidl-filename
()
ファイルおよびオプションのicf-filename
()
ファイルを指定すると、idl
コマンドは以下のファイルを生成します。
idl-filename
_c.cpp
idl-filename
_c.h
idl-filename
_s.cpp
idl-filename
_s.h
idl-filename
_i.cpp
idl-filename
_i.h
注意: | ICFファイルが指定されている場合は、そのICFファイル内の情報を基に、デフォルト値をオーバーライドするインタフェース/実装に関する情報がコード・ジェネレータに渡されます。通常、実装のアクティブ化ポリシーおよびトランザクション・ポリシーはICFファイルに指定されます。ICFファイルが指定されていない場合は、OMG IDLファイルで指定されるすべてのインタフェースに対してデフォルトのポリシーが有効になり、すべてのインタフェースに対してスケルトン・コードが生成されます。
icf-filename ファイルをidl コマンドへの入力として指定すると、icf-filename に指定された実装/インタフェースのペアのみが、サーバーの一部として生成されます。 |
IDLコンパイラは、生成するクライアント・スタブの情報をfilename
_c.cpp
ファイルおよびfilename
_c.h
ファイルに格納します。生成されたサーバー・スケルトンの情報は、filename
_s.cpp
ファイルおよびfilename
_s.h
ファイルに格納されます。
filename
_c.cpp
および
filename
_c.h
)や、すでに生成されているサーバー・スケルトン・ファイル(filename
_s.cpp
およびfilename
_s.h
)を上書きします。以前のバージョンのファイルはすべて破棄されます。
-i
オプションを使用すると、IDLコンパイラはサンプルの実装クラス定義ファイル(filename
_i.h
)を上書きします。以前のバージョンのファイルは破棄されます。サンプル実装ファイル(filename
_i.cpp
)も上書きされますが、コード保護ブロック内のコードは上書きされず、新しく生成されるファイルに復元されます。データが失われるのを避けるために、サンプル実装ファイル(filename
_i.h
およびfilename
_i.cpp
)を再生成する場合は、あらかじめそれらのファイルを安全な場所にコピーしておくことをお薦めします。
不明なオプションがこのコマンドに渡されると、そのオプションおよび使用方法を通知するメッセージがユーザーに表示され、コンパイルは実行されません。
idl
filename
-D
identifier
[=
definition
]
#define
と同じ働きをします。つまり、-D
オプションは、定義ファイル内にある特定の識別子のかわりに使用するトークン文字列またはマクロを定義します。definitionが指定されていない場合、identifierは1に定義されます。複数の-D
オプションを指定できます。-D
オプションと名前の間の空白は省略できます。
-I
pathname
#include
で指定するディレクトリのほか、インクルード・ファイルを検索するディレクトリを指定します。複数のディレクトリを指定する場合は、複数の-I
オプションを指定します。
#include
には、システム
(<a.idl>
など)とユーザー
("a.idl"
など)の2種類があります。システム・ディレクティブ#include
のパスは、システム・インクルード・ディレクトリおよび-I
オプションで指定されるディレクトリで構成されます。ユーザー・ディレクティブ#include
のパスは、#include
ディレクティブを含むファイルの場所と、その後に続く、システム・ディレクティブ#include
に指定されたパスで構成されます。デフォルトでは、#include
ディレクティブで取り込むファイル内のテキストは、クライアント・コードおよびサーバー・コードには取り込まれません。
-i
idl-filename_i.cpp
ファイルを生成します。これらのファイルには、OMG IDLファイルで指定されたインタフェースを実装する実装用のサンプル・テンプレートが入っています。注意: | idl コマンドに-i オプションを使用して実装ファイルを更新する手順は以下のとおりです。 |
"OBB_PRESERVE_BEGIN"
および"OBB_PRESERVE_END"
を"M3_PRESERVE_BEGIN"
および"M3_PRESERVE_END"
に変更します。*_i.cpp
)に追加した場合は、そのファイルを編集して、取り込んだ要素をINCLUDES
保護ブロック内に移動します。idl
コマンドで-i
オプションを使用して、編集した実装ファイルを再生成します。*_i.h
)に修正を加えていた場合は、新しく生成された定義ファイルにその修正箇所を反映させます。修正箇所はコード保護ブロック内に配置します。これにより、以降更新を行ってもその修正箇所は自動的に保護されるようになります。実装のコンストラクタ関数およびデストラクタ関数に特に注意してください。関数シグネチャがOracle Tuxedoリリース7.1で変更されました。*_i.cpp
)の保護ブロックの外側に、または実装のコンストラクタ関数またはデストラクタ関数に修正を加えていた場合は、新しく生成されたファイルを編集して、その修正箇所を反映させます。修正箇所は保護ブロック内に配置します。これにより、以降更新を行ってもその修正箇所は自動的に保護されるようになります。-P
Tobj_ServantBase
クラスからは継承しませんが、直接PortableServer::ServantBase
クラスから継承します。デフォルトでは、スケルトン・クラスはTPフレームワークを使用します。そのため、これらのサーバーはTPフレームワークを使用しないので、共同クライアント/サーバーを開発している場合はこのスイッチを使用する必要があります。
Tobj_ServantBase
クラスがないということは、そのサーバーントにactivate_object
メソッドとdeactivate_object
メソッドがないことを意味します。CORBAサーバーでは、これらのメソッドはTPフレームワークによって呼び出され、サーバーントに対してあるメソッドを呼び出す前に、そのサーバーントの状態を動的に初期化して保存します。CORBA共同クライアント/サーバーの場合、ユーザー作成コードで明示的にサーバーントを作成し、サーバーントの状態を初期化する必要があります。したがって、Tobj_ServantBase
の操作は必要ありません。-P
オプションを使用すると、TP Frameworkが使用できないため、ICFファイルは使用されません。
-T
idl emp.idl
idl emp.idl emp.icf
idl2ir
- インタフェース・リポジトリを作成し、インタフェース・リポジトリにインタフェース定義をロード
idl2ir [options]
definition-filename-list
[-f
repository-name
] [-c]
[-Didentifier
[=
definition
]]
[-Ipathname
[-I
pathname
] [...]] [-N{i|e}]
このコマンドを使用すると、インタフェース・リポジトリを作成し、そのインタフェース・リポジトリにインタフェース定義をロードできます。リポジトリ・ファイルがない場合は作成されます。リポジトリ・ファイルが存在する場合は、指定されたインタフェース定義がそのファイルにロードされ、その結果、ファイルが更新されます。
このコマンドを使用すると、新しいインタフェース・リポジトリ・データベース・ファイルが作成されます。
definition-filename-list
-f
repository-name
-f
オプションを指定しない場合、
UNIXシステムではインタフェース・リポジトリ・ファイルとしてrepository.ifr
が、Microsoft Windows 2003システムでは repository_1.ifr
が作成されます。
-c
既存のリポジトリが存在する場合に、このオプションが指定されていないときは、既存のリポジトリが更新されます。
-D
identifier
[=
definition
]
#define
と同じ働きをします。つまり、-D
オプションは、定義ファイル内にある特定の識別子のかわりに使用するトークン文字列またはマクロを定義します。definitionが指定されていない場合、identifierは1に定義されます。複数の-D
オプションを指定できます。
-I
pathname
#include
には、システム(<a.idl>
など)とユーザー("a.idl"
など)の2種類があります。システム・ディレクティブ#include
のパスは、UNIXシステムの/usr/include
および-I
オプションで指定されるディレクトリで構成されます。システム・ディレクティブ#include
のパスは、Windows NTシステムのローカル・ディレクトリおよび-I
オプションで指定されるディレクトリで構成されます。ユーザー・ディレクティブ#include
のパスは、カレント・ディレクトリおよび-I
オプションで指定されるディレクトリで構成されます。複数の-I
オプションを指定できます。
注意: | インタフェース・リポジトリに対するサーバー・プロセスの実行中にインタフェース・リポジトリにロードされる追加定義は、そのサーバー・プロセスが停止して再起動するまでは受け付けられません。 |
ir2idl [options] [
interface-name
]
[-f
repository-name
] [-n]
[-tinterface-type
] [-o
filename
]
このコマンドはインタフェース・リポジトリの内容を表示します。-o
オプションを使用して出力をファイルに送れば、リポジトリからOMG IDLファイルを抽出できます。デフォルトでは、リポジトリ・ファイルはrepository.ifr
です。
interface-name
-f
repository-name
-n
-t
interface-type
-o
filename
irdel [-f
repository-name
] [-i
id
]
object-name
このコマンドは、指定されたインタフェースをリポジトリから削除します。削除できるのは、他のインタフェースから参照されていないインタフェースだけです。デフォルトでは、リポジトリ・ファイルはrepository.ifr
です。
-f
repository-name
repository-name
の値は、インタフェース・リポジトリのファイル指定です。このオプションが指定されない場合、repository.ifr
がデフォルトとして使用されます。
-i
id
object-name
MOD1::INTERF2::OP3
と指定できます。この場合、操作OP3
はインタフェースINTERF2
内にあり、そのインタフェースはアプリケーションMOD1
内にあります。
mkfldcs
、mkfldcs32
- フィールド表からC#のヘッダー・ファイルを作成
mkfldcs [-d outdir] [ field_table... ]
mkfldcs32 [-d outdir] [ field_table... ]
mkfldcs
はmkfldhdr
に似ていますが、出力されるファイルがC#のソース・ファイルの生成に使用されることが異なります。このソース・ファイルには、入力ファイルで与えられた各FMLフィールドIDの定義などのパブリック・クラスが含まれます。
mkfldcs
コマンドライン・オプションは、mkfldhdr、mkfldhdr32(1)
と同じです。mkfldcs32
は32ビットFMLで使用します。
『Tuxedo .NETワークステーション・クライアントの使用』のTuxedo .NETワークステーション・クライアント・アプリケーションの作成に関する項<Default ?Font>
mkfldhdr
、mkfldhdr32
- フィールド表からヘッダー・ファイルを作成
mkfldhdr
[-d
outdir] [ field_table... ]mkfldhdr32
[-d
outdir] [ field_table... ]
mkfldhdr
は、各フィールド表をCプログラムにおける組込みに適するヘッダー・ファイルに変換します。結果として得られたヘッダー・ファイルからは、フィールド名からフィールドIDへの変換を行うための#define
マクロが得られます。ヘッダー・ファイルの名前は、変換する各ファイルのファイル名に.h
を付けることによって得られます。
フィールド表名は、コマンドラインで指定してもかまいません。また、各ファイルは対応するヘッダー・ファイルに変換されます。
フィールド表名をコマンドラインで指定しなかった場合には、プログラムは変換するフィールド表のリストとしてFIELDTBLS
環境変数を、またファイルの検索に使用するディレクトリのリストとしてFLDTBLDIR
環境変数を使用します。FIELDTBLS
は、フィールド表ファイル名の、カンマで区切られたリストを指定します。FIELDTBLS
に値がない場合、(唯一の)フィールド表ファイルの名前としてfld.tbl
が使用されます(この場合、結果として得られるヘッダー・ファイルはfld.tbl.h
になります)。
FLDTBLDIR
環境変数は、コロンで区切られたディレクトリのリストで、この中から名前が絶対パス名でないフィールド表が検索されます。フィールド表の検索は、UNIXシステムのPATH
変数を使用した実行可能コマンドの検索と非常によく似ています。FLDTBLDIR
が定義されない場合は、現在のディレクトリのみが検索されます。このため、コマンドラインにフィールド表名が指定されず、FIELDTBLS
とFLDTBLDIR
が設定されない場合は、mkfldhdr
によって、現在のディレクトリのフィールド表fld.tbl
がヘッダー・ファイルfld.tbl.h
に変換されます。
mkfldhdr32
は、32ビットのFMLで使用します。環境変数FIELDTBLS32
およびFLDTBLDIR32
を使用します。
-d
フィールド表のロードに失敗した場合、あるいは出力ファイルを生成できなかった場合には、エラー・メッセージが出力されます。
FLDTBLDIR=/project/fldtbls
FIELDTBLS=maskftbl,DBftbl,miscftbl,
export FLDTBLDIR FIELDTBLS
この例では、ディレクトリ/project/fldtbls
のファイルmaskftbl
、DBftbl
およびmiscftbl
を処理することにより、mkfldhdr
は、#include
ファイルmaskftbl.h
、DBftbl.h
およびmiscftbl.h
をカレント・ディレクトリに作成します。
上記の例のように環境変数を設定すると、コマンドmkfldhdr -d$FLDTBLDIR
は同じ入力フィールド表ファイルを処理して、同じ出力ファイルを生成しますが、それらのファイルは環境変数FLDTBLDIR
の値で示されるディレクトリに格納されます。
また、コマンドmkfldhdr myfields
は、入力ファイルmyfields
を処理して、カレント・ディレクトリにmyfields.h
を生成します。
『Oracle Tuxedo ATMI FML関数リファレンス』のFML関数の概要に関する項<Default ?Font>、「field_tables(5)」
mklanginfo
- ロケールの言語情報定数をコンパイル
mklanginfo
[fname
]
このプログラムは引数として指定されたファイルを取り込み、その入力を$TUXDIR/locale
/xx
/LANGINFO
に配置するのに適したファイルに変換します(xx
は特定のロケール)。ファイルの引数が指定されていない場合は、標準入力が使用されます。この言語値は、setlocale(3c)、strftime(3c)およびnl_langinfo(3c)で使用されます。
mklanginfo
は入力行を読み取ります。このとき、空白または「#」で始まる行は無視されます。値入力行は次の形式で指定する必要があります。
<token
> = “
value
”
トークン(token
)と二重引用符で囲んだ値
との間の文字は、二重引用符以外の任意の文字にすることができます(トークンの後に空白がある場合)。value
がnull文字列であると、その行は無視されます。そうでなければ、トークン
は1から48までの任意の整数とするか、以下に示す文字列のいずれかとする必要があります。
Integer String Value 1
DAY_1 Day 1 of the week, for example, Sunday 2
DAY_2 Day 2 of the week, for example, Monday 3
DAY_3 Day 3 of the week, for example, Tuesday 4
DAY_4 Day 4 of the week, for example, Wednesday 5
DAY_5 Day 5 of the week, for example, Thursday 6
DAY_6 Day 6 of the week, for example, Friday 7
DAY_7 Day 7 of the week, for example, Saturday 8
ABDAY_1 Abbreviated day 1 of the week, for example, Sun 9
ABDAY_2 Abbreviated day 2 of the week, for example, Mon 10
ABDAY_3 Abbreviated day 3 of the week, for example, Tue 11
ABDAY_4 Abbreviated day 4 of the week, for example, Wed 12
ABDAY_5 Abbreviated day 5 of the week, for example, Thu 13
ABDAY_6 Abbreviated day 6 of the week, for example, Fri 14
ABDAY_7 Abbreviated day 7 of the week, for example, Sat 15
MON_1 Month 1 of the year, for example, January 16
MON_2 Month 2 of the year, for example, February 17
MON_3 Month 3 of the year, for example, March 18
MON_4 Month 4 of the year, for example, April 19
MON_5 Month 5 of the year, for example, May 20
MON_6 Month 6 of the year, for example, June 21
MON_7 Month 7 of the year, for example, July 22
MON_8 Month 8 of the year, for example, August 23
MON_9 Month 9 of the year, for example, September 24
MON_10 Month 10 of the year, for example, October 25
MON_11 Month 11 of the year, for example, November 26
MON_12 Month 12 of the year, for example, December 27
ABMON_1 Abbreviated month 1 of the year, for example, Jan 28
ABMON_2 Abbreviated month 2 of the year, for example, Feb 29
ABMON_3 Abbreviated month 3 of the year, for example, Mar 30
ABMON_4 Abbreviated month 4 of the year, for example, Apr 31
ABMON_5 Abbreviated month 5 of the year, for example, May 32
ABMON_6 Abbreviated month 6 of the year, for example, Jun 33
ABMON_7 Abbreviated month 7 of the year, for example, Jul 34
ABMON_8 Abbreviated month 8 of the year, for example, Aug 35
ABMON_9 Abbreviated month 9 of the year, for example, Sep 36
ABMON_10 Abbreviated month 10 of the year, for example, Oct 37
ABMON_11 Abbreviated month 11 of the year, for example, Nov 38
ABMON_12 Abbreviated month 12 of the year, for example, Dec 39
RADIXCHAR Radix character, for example, '.' 40
THOUSEP Separator for thousands 41
YESSTR Affirmative response string, for example, yes 42
NOSTR Negative response string, for example, no 43
CRNCYSTR Currency symbol 44
D_T_FMT string for formatting date and time, for example, “%a%b%d%H:%M:0Y” 45
D_FMT string for formatting date, for example, “%m/%d/%y” 46
T_FMT string for formatting time, for example, “H:%M:%S” 47
AM_FMT Ante Meridian affix, for example, AM 48
PM_FMT Post Meridian affix, for example, PM
入力行は任意の順序で表示される可能性があります。入力行が同じ値に対して複数回表示される場合、その値の最後の行が使用されます。
mklanginfo
は、ファイルを処理すると、前のコード・リストに示した各言語情報定数の文字列名と文字列値を、リストの順に標準エラーに出力します。指定されていない言語情報定数の値としてNULL文字列が使用されます。nl_langinfo
は、このような未設定定数についてCロケールのデフォルト値(米国向け英語)を使用します。
コマンドラインにファイル名が指定されていると、mklanginfo
はコンパイルされた出力をfname
.out
に出力します。指定されていない場合は標準出力に出力します。形式は、NULLで終わる文字列値のみのリストです(改行文字は入りません)。
ファイルの読取りエラーや構文エラーがあると、エラー・メッセージが標準エラー出力に書き出された後、終了コード1でプログラムは終了します。成功時には、プログラムは終了コード0で終了します。
Oracle Tuxedoシステム(Cロケール)のデフォルトは、$TUXDIR/locale/C/lang.text
に格納されています。フランス語の値を入力するには、(UNIXシステムプラットフォーム上で)管理者が次の操作を行います。
mkdir $TUXDIR/locale/french
フランス語に翻訳
cd $TUXDIR/locale/french
cp $TUXDIR/locale/C/lang.text .
ed lang.textw
q
mklanginfo lang.text > LANGINFO
$TUXDIR/locale/C/lang.text
- Cロケールのデフォルト値$TUXDIR/locale/C/LANGINFO
- Cロケールの「コンパイル済」ファイル$TUXDIR/locale/
xx
/LANGINFO
- xx
ロケールの「コンパイル済」ファイル
mklanginfo
コマンドと、その実行結果として得られるLANGINFO
ファイルは、setlocale()
、strftime()
、あるいはnl_langinfo()
のOracle Tuxedoシステムの互換関数を使用する場合にのみ必要となります。UNIXで提供される関数は、別のファイル・セットおよびファイル形式を使用します。
nl_langinfo(3c)、setlocale(3c)、strftime(3c)、langinfo(5)
[QMCONFIG
=<device
>]qmadmin
[<device
>]
qmadmin
は、次の一覧で示す各種コマンドを使用することにより、メッセージ・キューの作成、検査および変更を行います。汎用デバイス・リスト(UDL)は、Oracle Tuxedo ATMIシステムが稼働するマシンに物理ストレージ・スペースをマップします。UDLのエントリは、キューとキュー・スペースのメッセージが格納される、ディスク空間を指定します。キュー・スペースのための汎用デバイス・リストが存在する(または存在することになる)デバイス(ファイル)名は、コマンドライン引数として指定することも、環境変数QMCONFIG
を介して指定することもできます。この両方で指定された場合には、コマンド・オプションが使用されます。
qmadmin
はシステム付属のサーバーとして、通常の初期化プロセスを行わないため、UBBCONFIG
ファイルからULOGPFX
の値を参照しません。その結果、qmadmin
コマンドによって生成されたすべてのログ・エントリが、現在の作業ディレクトリに書き込まれます。これに対処するには、ULOGPFX
環境変数をユーザー・ログのあるディレクトリのパス名に設定して、エクスポートします。
qmadmin
は、プロンプトとして不等号(>
)を使用します。引数はタブまたは空白(あるいは両方)で区切って入力します。空白を含む引数は二重引用符で囲むこともできます。二重引用符で囲んだ引数に二重引用符が含まれる場合は、含まれる二重引用符の前にバックスラッシュを付ける必要があります。必要な情報がコマンドラインに指定されない場合は、コマンドによって情報の入力を求められます。必須の引数が入力されないと、警告メッセージが表示され、プロンプトが再び表示されます。オプションのパラメータに関する情報に対してはプロンプトは表示されません。
ユーザーは、コマンドの入力を求められた際にq
または<CTRL-d>
と入力するとプログラムを終了できます。[Break]キーを押すと、コマンドからの出力を終了でき、新しいコマンドを入力するように求められます。コマンドの入力を求められた際に[Return]キーを押すと、[Break]キーを押した後を除き、直前のコマンドが繰り返し実行されます。
[Return]を押した後でコマンドを取り消す方法はありません。[Break]を押してもコマンドの出力(ある場合)が終了するだけです。したがって、[Return]を押す前にコマンドを正しく入力したことを確認してください。
qmadmin
コマンドからの出力は、使用しているページ別表示コマンドに従ってページ別表示されます(後述のpaginate
サブコマンドを参照)。
qmadmin
を初めて入力するときは、開いているキュー・スペースはありません。キュー・スペースを作成するにはqspacecreate
を実行します。このキュー・スペースを開くには、qopen
を実行します。qaborttrans
、qclose
、qchangeprio
、qchangequeue
、qchangetime
、qchangeexptime
、qcommittrans
、qchange
、qcreate
、qdeletemsg
、qinfo
、qlist
、qprinttrans
、およびqset
は、キュー・スペースが開いているときのみ実行できます。
次の表は、機能タイプ別にグループ化したqmadmin
コマンドをリストしています。
コマンドの形式は、完全名でも省略形でも(省略形がある場合は、完全名の後にカッコで示されます)入力することができ、該当する引数がその後に付きます。大カッコ[ ]で囲まれている引数は省略可能で、中カッコ{ }で囲まれている引数は、相互に排他的な選択肢を示します。
chdl
[dlindex
[newdevice
]]
lidl
で戻されます)。第1引数をコマンドラインで指定しなかった場合は、プログラムによって入力が要求されます。
crdl
[device
[offset
[size
]]]
QMCONFIG
によって参照されるデバイスと一致し、0オフセットを含んでいる必要があります。コマンドラインに引数が入力されていない場合は、プログラムから入力するように要求されます。
/app/queues/myspace 0 500
の後に、/app/queues/myspace 1000 500
と割り当てると、500から999までのブロックを使用しない合計1000個のブロックが割り当てられます。デバイス・リストおよび目次用に、最初のデバイス・エントリのうちの数エントリが使用されます。デバイス・リストには、最大25エントリまで作成できます。
dsdl
[-y
] [dlindex
]
dlindex
引数は、デバイス・リストから削除するデバイスの、汎用デバイス・リストでの索引です。コマンドラインに入力されていない場合は、プログラムから入力するように要求されます。エントリ0は、すべてのVTOC
ファイルと他のデバイス・リスト・エントリが破棄されないかぎり削除できません。(エントリ0に含まれるデバイスはデバイス・リストと目次を保持するため、このエントリを破棄すると、これら2つの表も破棄されるためです。)VTOC
ファイルを削除するには、関連するエンティティを削除するしかありません(たとえば、デバイスに存在するキュー・スペースの破棄)。-y
オプションを指定されないかぎり、このコマンドは確認のためのプロンプトを表示します。
echo (e)
[{off
| on
}]
help (h)
[{command
| all
}]
ipcrm
[-f
] [-y
] [queue_space_name
]
qmadmin
で開かれている場合は、閉じられます。ipcrm
は、キュー・スペースで使用されるすべてのIPCリソースを把握しているため、IPCリソースを削除するただ1つの方法です。qmadmin
は、他のプロセスがキュー・スペースにアタッチしていないことを確認してから、IPCリソースを削除します。-f
オプションを指定すると、他のプロセスがアタッチしている場合でもIPCリソースを強制的に削除できます。-f
オプションが指定された場合に-y
オプションの指定がなければ、このコマンドは、実行の前に確認のためのプロンプトを表示します。コマンドが正常に完了すると、指定されたキュー・スペースのすべての一時的メッセージが完全に失われます。
ipcs
[queue_space_name
]
lidl
[dlindex
]
dlindex
を指定すると、デバイス・リストのそのエントリについての情報のみが表示されます。
livtoc
VTOC
表のすべてのエントリについて情報を表示します。各エントリについて表示される情報は、VTOC
表の名前、VTOC表のあるデバイス、デバイスの先頭からのVTOC
表のオフセットおよびこの表に割り当てられているページ数があります。VTOC
には、最大100のエントリがあります。
paginate
(page
) [{off|on
}]
pg
は、UNIXオペレーティング・システムにおけるデフォルトのコマンドです。シェル環境変数PAGER
を使用すると、ページ別表示出力に使用されるデフォルトのコマンドをオーバーライドできます。
qaborttrans
(qabort
) [-y
] [tranindex
]
tranindex
に関連付けられている、プリコミットされているトランザクションをヒューリスティックに中断します。トランザクション索引をコマンドラインで指定しなかった場合は、プログラムはその入力を要求します。トランザクションが決定されることがわかっていて、その決定がコミットすることであった場合は、qaborttrans
は失敗します。索引は、事前のqprinttrans
コマンドの実行から取得されます。-y
オプションが指定されていなければ、確認がリクエストされます。このコマンドの使用には、十分な注意が必要です。
qaddext
[queue_space_name
[pages
]]
qmadmin
で開かれている場合は、閉じられます。物理ページ数は、最も近い4の倍数に切り捨てられます(説明と例は、「qspacecreate」を参照)。スペースは、QMCONFIG
デバイスに関連付けられたUDL
に定義されたエクステントから割り当てられます。新しいキュー・スペース・エクステントそれぞれが、VTOC
の追加エントリを使用します(最大100エントリが使用可能)。キュー・マネージャによって、キュー・スペースがすぐに識別して関連付けることができるように、エクステントの名前が付けられます。コマンドが正常に完了すると、指定されたキュー・スペースのすべての一時的メッセージが完全に失われます。
qchange
[-d
persist
|nonpersist
] [-n
nhigh
,nlow
,ncmd
] -e
default_relative_expiration_time
]queue_name
[out-of-order
[retries
[delay
[high
[low
[cmd
]]]]]]]
msgid
の前に登録)、再試行の回数、各再試行の間の遅延時間(秒)、しきい値コマンドを実行するための上限値と下限値、および永続メッセージに対するしきい値コマンドそのものを指定できます。
none
、top
およびmsgid
です。top
とmsgid
の両方をカンマで区切って指定できます。 しきい値を使用すると、永続メッセージのしきい値に到達したときに、コマンドを自動的に実行できるようになります。上限は、コマンドがいつ実行されるかを指定します。上限に到達したときにコマンドを再実行するには、その前に下限に到達する必要があります。たとえば、制限が100メッセージと50メッセージの場合、100メッセージがキューにあるときにコマンドが実行されます。キューのメッセージが排出されて50メッセージまで減らないと、再び100メッセージになってもコマンドは実行されません。キューの容量は、キューが使用するバイト数またはブロック数(numberの後にb
またはB
接尾辞)、キューによって使用されるキュー・スペースのパーセンテージ(number
の後に%
)、またはキューの合計メッセージ数(number
の後にm
)で指定できます。上限と下限のしきい値のタイプは同じにする必要があります。タイプを下限値に指定するかどうかはオプションですが、指定された場合は、上限のタイプと一致する必要があります。メッセージ(m
)の接尾辞は、永続メッセージと非永続メッセージの両方に対応します。もう1つのしきい値接尾辞は、永続メッセージだけに適用されます。非永続メッセージのしきい値を指定するには、-n
オプションを使用します。しきい値コマンドをコマンドラインに指定するとき、空白が含まれる場合は二重引用符で囲む必要があります。再試行回数は、メッセージをキューから取り出すことができる回数を指定します。トランザクションがロールバックし、メッセージはキューに戻ります。再試行間隔も指定できます。再試行の回数が上限に達すると、キュー・スペースに定義されたエラー・キューにメッセージが移動されます。エラー・キューが定義されていない場合、メッセージは破棄されます。キューのキュー順序値は変更できません。優先度の低いメッセージは、優先度の高いメッセージがキューに含まれていても、10メッセージごとにキューから取り出されます。 -d
オプションは、キューのデフォルト配信ポリシーを指定します。-d
オプションの有効値は、persist
とnonpersist
です。デフォルトの配信ポリシーがpersist
の場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、永続(ディスク・ベース)配信モードを使用して配信されます。ポリシーがnonpersist
の場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、非永続(メモリー)配信モードを使用して配信されます。-d
オプションが指定されない場合、システムによって情報は求められず、デフォルトの配信ポリシーは変更されません。デフォルト配信ポリシーが変更されても、すでにキューに存在していたメッセージのサービス配信レベルは変化しません。変更中のキューが現在キュー・スペースにあるメッセージに対して名前が付けられている応答キューである場合、キューのデフォルトの配信ポリシーを変更しても、そのメッセージのサービスの応答品質は変わりません。 メモリー領域の不足やフラグメント化のために一時的メッセージをキューに登録できない場合、メッセージ用の永続ストレージが十分にあってもキューへの登録操作は失敗します。ディスクの不足やフラグメント化のために永続的メッセージをキューに登録できない場合、メッセージ用の非永続ストレージが十分にあってもキューへの登録操作は失敗します。 キュー・スペースで非永続メッセージに予約されているメモリー容量が0
の場合、非永続メッセージに予約されている領域はありません。(非永続メッセージのメモリー領域の詳細は、「qspacecreate
」および「qspacechange
」を参照してください。)この場合、非永続メッセージをキューに登録しようとしても失敗します。これには、ターゲット・キューのデフォルト配信ポリシーがnonpersist
で、配信サービス・レベルが指定されていないメッセージが含まれます。 -n
オプションは、非永続記憶域のしきい値に到達した際に、コマンドの自動実行に使用するしきい値を指定します。nhigh
制限により、コマンドncmd
がいつ実行されるかが指定されます。nhigh
制限に到達したときにコマンドを再実行するには、その前にnlow
制限に到達する必要があります。-n
オプションを指定する場合、nhigh
、nlow
およびncmd
の値すべてを指定する必要があります。そうしないと、コマンドが失敗します。ncmd
値は空文字列として指定できます。 -n
オプションが指定されなくても、プログラムによって情報の入力を求められることはありません。 メモリー容量(キュー内の非永続データの容量)は、バイト数(b
)、ブロック数(B
)またはパーセンテージ(number
の後に%
)のいずれかのしきい値タイプとして指定できます。nhigh
とnlow
の値のしきい値タイプは同じにする必要があります。たとえば、nhigh
を100%に設定すると、nlow
を指定する場合にはパーセンテージとして指定する必要があります。nlow
値のしきい値タイプはオプションです。-n
オプションが指定されない場合、非永続メッセージのデフォルトしきい値は変更されません。ncmd
に空白が含まれる場合は、二重引用符で囲む必要があります。 [ . . . [high
[low
[cmd
]]] . . . ]しきい値のm
接尾辞は、キューのすべてのメッセージ(永続メッセージと非永続メッセージの両方)に適用されます。したがって、nhigh
とnlow
と一緒に使用することはできません。接尾辞-m
が指定されていないしきい値[ . . . [high
[low
[cmd
]]] . . . ]は、永続的(ディスク・ベース)メッセージにのみ適用されます。 -e
default_relative_expiration_time
オプションは、キューに登録されたメッセージで、有効期限が明示的に指定されていないすべてのメッセージの有効期限を設定します。有効期限には、有効期限の相対時間またはnone
を使用できます。有効期限に達したとき、メッセージがキューから取り出されていない場合や管理時に削除されていない場合には、メッセージがキューから削除され、メッセージに関連付けられたすべてのリソースがシステムによって解放されて、統計情報が更新されます。有効期限の時間がメッセージの使用可能時間より前の場合、使用可能時間が有効期限の切れる時間より前になるようにいずれかの時間を変更しないかぎり、メッセージをキューから取り出すことはできません。また、これらのメッセージがキューからの取出しの対象になったことがなくても、有効期限が切れるとキューから削除されます。トランザクション中にメッセージの期限が切れてもトランザクションは失敗しません。トランザクション内でキューへの登録、またはキューからの取出し中に有効期限が切れたメッセージは、トランザクションが終了した時点でキューから削除されます。メッセージの期限が切れても通知されません。 -e
オプションが指定されない場合、キューのデフォルト有効期限は変更されません。qchange
を使用してキューの有効期限を変更しても、すでにキューに存在していたメッセージの有効期限は変更されません。-e
オプションが指定されなくても、プログラムによって入力が要求されることはありません。 相対的なdefault_relative_expiration_time
の形式は+
seconds
です。seconds
は、キュー・マネージャが処理を正常に終了してから、メッセージが期限切れになるまでの秒数です。値0
を指定するとすぐに期限切れになります。default_relative_expiration_time
の値には、文字列none
を設定することもできます。none
文字列を指定すると、明示的な有効期限なしでキューに登録されたメッセージは、期限が明示的に割り当てられないかぎり期限切れになりません。
qchangeexp
(qce
) -y
[newtime
]
qscan
コマンドを使用して設定します。選択基準が設定されない場合、キューのすべてのメッセージが変更されます。デフォルトでは、有効期限が設定される前に確認を求められます。-yオプションを指定すると、確認のプロンプトが表示されません。newtime
値には、現在時刻に対する相対値、絶対値、およびnone
のいずれかを指定できます。newtime
値がコマンドラインに入力されていない場合は、プログラムから入力するように要求されます。 この値を変更するキュー・マネージャがメッセージの有効期限をサポートしていても、メッセージの有効期限をサポートしていないOracle Tuxedo ATMIシステムのバージョンによってキューに登録されたメッセージを変更して、期限切れ時間を設定することはできません。qchangeexp
の影響を受けるメッセージが、Oracle Tuxedo ATMIシステムのそのようなバージョンの1つによってキューに登録された場合は、選択されたメッセージの一部がこの制約のために変更されなかったことを示すエラー・メッセージが生成されます。 相対有効期限は、リクエストがキュー・マネージャ・プロセスに届いた時点に対して相対的です。相対的なnewtime
の形式は+
seconds
です。seconds
は、キュー・マネージャが処理を正常に終了してから、メッセージが期限切れになるまでの秒数です。seconds
が0
に設定されると、メッセージはすぐに期限切れになります。有効期限の絶対時間は、キュー・マネージャ・プロセスが常駐するマシンの時計によって決定されます。絶対的なnewtime
の形式は、YY
[MM
[DD
[HH
[MM
[SS
]]]]]です(qscan
の説明を参照してください)。newtime
の値には、文字列none
を指定することもできます。この場合、対象のメッセージの有効期限がなくなります。
qchangeprio
(qcp
) [-y
] [newpriority
]
-y
オプションが指定されていないかぎり、変更の前に確認が求められます。qlist
コマンドを実行して、どのようなメッセージが変更されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。newpriority
値は、処理のためにメッセージが転送されるときに使用される新しい優先度を指定します。これは1から100までの範囲である必要があります。コマンドラインで指定していないと、入力するよう求められます。
qchangequeue
(qcq
) [-y
] [newqueue
]
qset
コマンドを使用して設定され、移動されるメッセージを制限する選択基準は、qscan
コマンドを使用して設定されます。選択基準が設定されない場合、キューのすべてのメッセージが移動されます。-y
オプションが指定されていないかぎり、変更の前に確認が求められます。qlist
コマンドを実行して、どのようなメッセージが移動されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。newqueue
値は、メッセージの移動先のキュー名を指定します。コマンドラインでnewqueue
が指定されない場合は、プログラムによって入力が要求されます。メッセージの配信サービス・レベルが、newqueue
のデフォルト配信ポリシーと一致するように変更されることはありません。
qchangetime
(qct
) [-y
] [newtime
]
-y
オプションが指定されていないかぎり、変更の前に確認が求められます。qlist
コマンドを実行して、どのようなメッセージが変更されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。newtime
値には、現在時刻に対する相対値、または絶対値のいずれかを指定できます。コマンドラインで指定していないと、入力するよう求められます。相対的なonetime
の形式は+
seconds
です。seconds
は、現時点からメッセージを実行するまでの秒数です(0の場合、すぐに実行されます)。絶対的なnewtime
の形式はYY
[MM
[DD
[HH
[MM
[SS
]]]]]です(qscan
の説明を参照してください)。
qclose
qcommittrans
(qcommit
) [-y
] [tranindex
]
tranindex
に関連付けられているプリコミットされているトランザクションをヒューリスティックにコミットします。トランザクション索引をコマンドラインで指定しなかった場合は、プログラムはその入力を要求します。トランザクションが決定されることがわかっていて、その決定が中断することであった場合は、qcommittrans
は失敗します。索引は、事前のqprinttrans
コマンドの実行から取得されます。-y
オプションが指定されていなければ、確認がリクエストされます。このコマンドの使用には、十分な注意が必要です。
qcreate
(qcr
) [-d
persist
|nonpersist
] [-n
nhigh
,
nlow
,
ncmd
] -e
default_relative_expiration_time
]queue_name
[qorder
[out-of-order
[retries
[delay
[high
[low
[cmd
]]]]]]]]
msgid
の前に登録)、再試行の回数、再試行の間隔(秒)、しきい値コマンドを実行するための上限値と下限値、および永続メッセージに対するしきい値コマンドそのものを指定できます。
fifo
、lifo
、priority
、expiration
およびtime
です。キューの順序を指定するときは、重要なソート値から順に指定する必要があります。fifo
またはlifo
は、最も重要でないソート値(またはただ1つのソート値)として指定してください。fifo
もlifo
も指定されない場合、デフォルト値はfifo
です。指定されている他のソート基準に適用されます。expiration
が指定されると、有効期限のないメッセージは、有効期限付きのメッセージすべてが取り出された後にキューから取り出されます。複数のソート値はカンマで区切って指定できます。out-of-orderの値は、none
、top
またはmsgid
です。top
とmsgid
の両方をカンマで区切って指定できます。 しきい値を使用すると、永続メッセージのしきい値に到達したときに、コマンドを自動的に実行できるようになります。上限は、コマンドがいつ実行されるかを指定します。上限に到達したときにコマンドを再実行するには、その前に下限に到達する必要があります。たとえば、制限が100メッセージと50メッセージの場合、100メッセージがキューにあるときにコマンドが実行されます。キューのメッセージが排出されて50メッセージまで減らないと、再び100メッセージになってもコマンドは実行されません。 キューの容量は、キューが使用するバイト数またはブロック数(numberの後にb
またはB
接尾辞)、キューによって使用されるキュー・スペースのパーセンテージ(number
の後に%
)、またはキューの合計メッセージ数(number
の後にm
)で指定できます。上限と下限のしきい値のタイプは同じにする必要があります。メッセージ(m
)の接尾辞は、永続メッセージと非永続メッセージの両方に対応します。もう1つのしきい値接尾辞は、永続メッセージだけに適用されます。非永続メッセージのしきい値を指定するには、-n
オプションを使用します。タイプを下限値に指定するかどうかはオプションですが、指定された場合は、上限のタイプと一致する必要があります。しきい値コマンドをコマンドラインに指定するとき、空白が含まれる場合は二重引用符で囲む必要があります。 再試行回数は、メッセージをキューから取り出すことができる回数を指定します。トランザクションがロールバックし、メッセージはキューに戻ります。再試行間隔も指定できます。再試行の回数が上限に達すると、キュー・スペースに定義されたエラー・キューにメッセージが移動されます。エラー・キューが定義されていない場合、メッセージは破棄されます。優先度の低いメッセージは、優先度の高いメッセージがキューに含まれていても、10メッセージごとにキューから取り出されます。 -d
オプションは、キューのデフォルト配信ポリシーを指定します。-d
オプションの有効値は、persist
とnonpersist
です。デフォルトの配信ポリシーがpersist
の場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、永続(ディスク・ベース)配信モードを使用して配信されます。ポリシーがnonpersist
の場合、明示的に配信モードを指定せずにキューに登録されたメッセージは、非永続(メモリー)配信モードを使用して配信されます。-d
オプションが指定されない場合、システムによって情報は求めらません。キューのデフォルト配信ポリシーはpersist
です。デフォルト配信ポリシーが変更されても、すでにキューに存在していたメッセージのサービス配信レベルは変化しません。 メモリー領域の不足やフラグメント化のために一時的メッセージをキューに登録できない場合、メッセージ用の永続ストレージが十分にあってもキューへの登録操作は失敗します。ディスクの不足やフラグメント化のために永続的メッセージをキューに登録できない場合、メッセージ用の非永続ストレージが十分にあってもキューへの登録操作は失敗します。 キュー・スペースで非永続メッセージに予約されているメモリー容量が0
の場合、非永続メッセージに予約されている領域はありません。(非永続メッセージのメモリー領域の詳細は、「qspacecreate
」および「qspacechange
」を参照してください。)この場合、非永続メッセージをキューに登録しようとしても失敗します。これには、ターゲット・キューのデフォルト配信ポリシーがnonpersist
で、配信サービス・レベルが指定されていないメッセージが含まれます。 -n
オプションは、非永続記憶域のしきい値に到達した際に、コマンドの自動実行に使用するしきい値を指定します。nhigh
制限により、コマンドncmd
がいつ実行されるかが指定されます。nhigh
制限に到達したときにコマンドを再実行するには、その前にnlow
制限に到達する必要があります。-n
オプションを指定する場合、nhigh
、nlow
およびncmd
の値すべてを指定する必要があります。そうしないと、コマンドが失敗します。ncmd
値は空文字列として指定できます。 -n
オプションが指定されなくても、プログラムによって情報の入力を求められることはありません。 メモリー容量(キュー内の非永続データの容量)は、バイト数(b
)、ブロック数(B
)またはパーセンテージ(number
の後に%
)のいずれかのしきい値タイプとして指定できます。nhigh
とnlow
の値のしきい値タイプは同じにする必要があります。たとえば、nhigh
を100%に設定すると、nlow
を指定する場合にはパーセンテージとして指定する必要があります。nlow
値のしきい値タイプはオプションです。-n
オプションが指定されない場合、デフォルトのしきい値(nhigh
は100%
、nlow
は0%
)が使用されます。ncmd
には" "
が設定されます。ncmd
に空白が含まれる場合は、二重引用符で囲む必要があります。 [ . . . [high
[low
[cmd
]]] . . . ]しきい値のm
接尾辞は、キューのすべてのメッセージ(永続メッセージと非永続メッセージの両方)に適用されます。したがって、nhigh
とnlow
と一緒に使用することはできません。接尾辞-m
が指定されていないしきい値[ . . . [high
[low
[cmd
]]] . . . ]は、永続的(ディスク・ベース)メッセージにのみ適用されます。 -e
default_relative_expiration_time
オプションは、キューに登録されたメッセージで、有効期限が明示的に指定されていないすべてのメッセージの有効期限を設定します。有効期限には、有効期限の相対時間またはnone
を使用できます。有効期限に達したとき、メッセージがキューから取り出されていない場合や管理時に削除されていない場合には、メッセージがキューから削除され、メッセージに関連付けられたすべてのリソースがシステムによって解放されて、統計情報が更新されます。有効期限の時間がメッセージの使用可能時間より前の場合、使用可能時間が有効期限の切れる時間より前になるようにいずれかの時間を変更しないかぎり、メッセージをキューから取り出すことはできません。また、これらのメッセージがキューからの取出しの対象になったことがなくても、有効期限が切れるとキューから削除されます。トランザクション中にメッセージの期限が切れてもトランザクションは失敗しません。トランザクション内でキューへの登録、またはキューからの取出し中に有効期限が切れたメッセージは、トランザクションが終了した時点でキューから削除されます。メッセージの期限が切れても通知されません。 -e
オプションが指定されない場合、キューのデフォルト有効期限はnone
に設定されます。qchange
を使用してキューの有効期限を変更しても、すでにキューに存在していたメッセージの有効期限は変更されません。-e
オプションが指定されなくても、プログラムによって入力が要求されることはありません。 相対的なdefault_relative_expiration_time
の形式は+
seconds
です。seconds
は、キュー・マネージャが処理を正常に終了してから、メッセージが期限切れになるまでの秒数です。値0
を指定するとすぐに期限切れになります。default_relative_expiration_time
の値には、文字列none
を設定することもできます。none
文字列を指定すると、明示的な有効期限なしでキューに登録されたメッセージは、期限が明示的に割り当てられないかぎり期限切れになりません。
qdeletemsg
(qdltm
) [-y
]
qset
コマンドを使用します。削除するメッセージを制限する選択基準は、qscan
コマンドを使用して設定します。選択基準が設定されない場合、キューのすべてのメッセージが削除されます。削除の前に確認が求められます。qlist
コマンドを実行して、どのようなメッセージが削除されるかを確認することをお薦めします(入力ミスによるエラーが減少します)。このコマンドは、-y
オプションを指定していない場合に確認のためのプロンプトを表示します。
qdestroy
(qds
) [{ -p | -f
}] [-y
] [queue_name
]
-p
オプションを指定すると、キュー・スペースにアタッチされているプロセスがない場合には、キューからメッセージを「パージ」してキューを破棄することができます。-f
オプションを指定すると、キュー・スペースにメッセージまたはプロセスがアタッチされている場合でも、キューを「強制的に」削除することができます。メッセージが現在のトランザクションに関係している場合、このコマンドは失敗し、エラーがuserlog
に書き込まれます。このコマンドは、-y
オプションを指定していない場合に確認のためのプロンプトを表示します。
qinfo
[queue_name
]
qlist
(ql
)
qset
コマンドを使用します。表示するメッセージを制限する選択基準は、qscan
コマンドを使って設定します。設定基準が何も設定されていない場合は、キューにあるすべてのメッセージが表示されます。
verbose
モードがオンの場合は、相関識別子が表示されます。
qopen
[queue_space_name
]
qmadmin
で開かれている場合は、閉じられます。
qprinttrans
(qpt
)
qaborttrans
またはqcommittrans
でトランザクションの中断またはコミットを行う際に使用されるものです。
qscan
[{ [-t
time1
[-
time2
]] [-p
priority1
[-
priority2
]] [-m
msgid
] -i
corrid
][-d
delivery_mode
] [-e
time1
[-
time2
]] | none
}]
qchangeprio
、qchangequeue
、qchangetime
、qdeletemsg
およびqlist
に使用する選択基準を設定します。引数none
は選択基準がないことを指定します。キューのすべてのメッセージが影響を受けます。このコマンドを引数なしで実行すると、現在の選択基準の値が表示されます。コマンドライン・オプションで値の範囲を指定するとき(たとえば、-t
、-e
または-p
)、値範囲に空白を含めることはできません。-t
オプションを使用すると、時間の値または時間範囲を指定できます。time1
とtime2
の形式は、YY
[MM
[DD
[HH
[MM
[SS
]]]]]です。年、月、日、時、分、秒が指定されます。日時の値で単位が省略されている場合は、使用可能な最小の値にデフォルト設定されます。たとえば、7502は750201000000に相当します。年の範囲00-37は2000-2037として、70-99は1970-1999として処理されます。38-69は無効です。-p
オプションを使用すると、優先度の値または優先度の範囲を指定できます。優先度の範囲は1から100までです。-m
オプションを使用すると、システムがメッセージをキューに登録するときにメッセージに割り当てられるメッセージIDの値を指定できます。メッセージIDはキュー内で一意であり、長さは最大32文字です。32文字よりも短い値は、右側にnull値(0x0)が埋め込まれます。バックスラッシュや表示できない文字(空白、改行、タブなど)は、バックスラッシュの後に、その文字を表す2文字の16進数値を入力する必要があります(たとえば、空白は\20であり、hello\20world
のように使用します)。-i
オプションを使用すると、メッセージに関連付ける相関識別子を指定できます。識別子の値はアプリケーションによって割り当てられ、キューに登録されたメッセージと一緒に格納されます。また、応答メッセージまたはエラー・メッセージのレスポンスと一緒に格納するために渡されます。これにより、アプリケーションが特定のリクエストのレスポンスを識別できるようになります。値は最長32文字です。32文字よりも短い値は、右側にnull値(0x0)が埋め込まれます。バックスラッシュや表示できない文字(空白、改行、タブなど)は、バックスラッシュの後に、その文字を表す2文字の16進数値を入力する必要があります(たとえば、空白は\20であり、my\20ID\20valueのように使用します)。
-d
delivery_mode
オプションの有効値は、persist
とnonpersist
です。このオプションは、オペレータが配信方法に基づいて処理を実行できるように、qscan
で選択されたメッセージの配信モードを指定します。 -e
オプションを使用すると、有効期限または有効期限の範囲を指定できます。time1
とtime2
の形式は、-t
オプションのtime1
とtime2
と同じです。
qset
[queue_name
]
qchangeprio
、qchangequeue
、qchangetime
、qdeletemsg
およびqlist
に使用するキュー名を設定します。引数なしでこのコマンドを実行すると、現在のキュー名が表示されます。
qsize
[-A
actions
] [-H
handles
] [-C
cursors
] [ -O
owners
] [-Q
tmp_queues
] -f
filter_memory
] [-n
nonpersistent_msg_memory
[b,B
]] [-o
overflow_memory
][pages
[queues
[transactions
[processes
[messages
]]]]]
pages
、queues
、(同時) transactions
、processes
および(キュー内) messages
で指定したサイズを使用して、キュー・スペースに必要な共有メモリーのサイズを計算します。コマンドラインで値を指定しなかった場合は、プログラムはそれらの入力を要求します。必要となるシステム・セマフォの数も出力されます。上記以外のオプションで有効な値については、qspacecreate
で説明しています。
qspacechange
(qspch
)
[-A
actions
] [-H
handles
] [-C
cursors
] [ -O
owners
] -Q
tmp_queues
] [-f
filter_memory
] [-n
nonpersistent_msg_memory
[b,B
]] -o
overflow_memory
][queue_space_name
[ipckey
[trans
[procs
[messages
[errorq
[inityn
[blocking
]]]]]]]]
qspacecreate
の項で説明しています。指定したキュー・スペースがqmadmin
で開かれている場合は、閉じられます。新しいエクステントを追加するには、qaddext
を使用する必要があります。キューの数は変更できません。
qspacecreate
(qspc
) [-A
actions
] [-n
nonpersistent_msg_memory
[b,B
]] -o
overflow_memory
][queue_space_name
[ipckey
[pages
[queues
[trans
[procs
[messages
[errorq
[inityn
[blocking
]]]]]]]]]]
ipckey
、キュー・スペースに割り当てる物理ページ数、キューの数、同実行トランザクションの数、キュー・スペースに同時にアタッチされるプロセスの数、一度にキューに入れることができるメッセージの数、キュー・スペースのエラー・キューの名前、キュー・スペースの新エクステントでページを初期化するかどうか、キュー・スペースの初期化とウォーム・スタートのディスク入出力を実行するためのブロッキング要素です。
.
)が1つ標準出力に表示されます。初期化オプションがオンになっていないにもかかわらず基本的なデバイスが文字特殊デバイスではない場合、まだそのエクステントに対して指定したサイズに到達していないと、ファイルが初期化されます(つまり、指定されたスペースを割り当てるためにファイルが増加します)。キュー・スペースの作成時やウォーム・スタート(キュー・スペースの再起動)時にブロックの読取りおよび書込みを行う場合、入出力操作のサイズは、ブロッキング要素によって指定されるディスク・ページ・サイズの倍数として計算されます。– A
actions
オプションは、キューイング・サービス・コンポーネントが同時に処理できる追加のアクション数を指定します。ブロッキング操作の発生時に追加操作を利用できる場合、ブロッキング操作は条件を満たす状態になるまで保留されるように設定されます。ブロッキング操作が保留されると、他の操作リクエストを処理できます。ブロッキング操作が完了すると、その操作に関連する操作は続く操作でも実行できるようになります。ブロッキング操作がリクエストされた時点ですぐに条件を満たす状態にならず、利用可能な操作もない場合には、操作は失敗します。システムでは、キュー・スペースにアタッチ可能なプロセスの数と同じ数だけ操作が予約されているため、それぞれのキュー・マネージャ・プロセスは少なくとも1つブロッキング操作を所有できます。システムによって予約されているブロッキング操作の数を超える場合、管理者は予約数より多くの追加ブロッキング操作に対応できるようにシステムを設定することができます。– A
actions
オプションが指定されていない場合、デフォルトはゼロになります。– A
オプションが指定されていない場合でも、プログラムはそれを要求しません。-n
nonpersistent_msg_memory
オプションは、キュー・スペースに含まれるすべてのキューの非永続メッセージ向けに共有メモリー内で予約する領域のサイズを指定します。サイズは、バイト(b
)または(B
)で指定され、ブロック・サイズは、ディスク・ブロック・サイズと同等です。[bB
]接尾辞はオプションで、指定されない場合、デフォルトはブロックになります。-n
オプションが指定されない場合、メモリー・サイズはデフォルトでゼロ(0
)になります。さらに、-n
オプションが指定されない場合でも、プログラムはそれを要求しません。nonpersistent_msg_memory
の値がバイト(b)で指定された場合、システムはその値をページあたりのバイト数で割り(ページ・サイズはディスク・ページ・サイズと等しい)、結果を直近の整数に切り捨て、そのページ数のメモリーを割り当てます。たとえば、ページ・サイズを1024バイト(1KB)として考えると、リクエストされた値が2000bの場合は1ページ分(1024バイト)のメモリー割当てが行われ、リクエストされた値が2048bの場合は2ページ分(2048バイト)のメモリー割当てが行われます。ページあたりのバイト数より小さい値をリクエストすると、0ページ(0バイト)が割り当てられます。nonpersistent_msg_memory
の値をブロック(B)で指定し、1メモリー・ブロックが1メモリー・ページと等しいとすると、システムは指定した値と同じページ数を割り当てます。たとえば、リクエストされた値が50Bの場合、50ページ分のメモリー割当てが行われます。キュー・スペースのnonpersistent_msg_memory
がゼロ(0
)の場合、非永続メッセージ用の領域は確保されません。この場合、非永続メッセージをキューに登録しようとしても失敗します。永続的な記憶域と非永続的な記憶域は互換性がありません。メモリー領域の不足やフラグメント化のために一時的メッセージをキューに登録できない場合、メッセージ用の永続ストレージが十分にあってもキューへの登録操作は失敗します。ディスクの不足やフラグメント化のために永続的メッセージをキューに登録できない場合、メッセージ用の非永続ストレージが十分にあってもキューへの登録操作は失敗します。– o
overflow_memory
オプションは、割り当てられている共有メモリー・リソースの一部またはすべてが使い果たされているような最大負荷時に対応するために、共有メモリー内で予約するメモリー領域のサイズを指定します。メモリー・サイズはバイト単位で指定されます。追加のオブジェクトは、この追加メモリーから先着順に割り当てられます。追加メモリーに作成されたオブジェクトを閉じるか破棄すると、次にオーバーフローが発生するときに備えてメモリーが解放されます。– o
overflow_memory
オプションが指定されない場合、デフォルトはゼロになります。– o
オプションが設定されない場合でも、プログラムがそれを要求することはありません。この追加メモリー領域では、設定数より多くのオブジェクトを生成できますが、追加メモリーを特定の時点で特定のオブジェクトに対して使用できるとはかぎりません。現在オーバーフロー・メモリーを使用できるのは、アクション、ハンドル、カーソル、オーナー、一時キュー、タイマー、およびフィルタのみです。
qspacedestroy
(qspds
) [-f
] [-y
] [queue_space_name
]
qmadmin
で開かれている場合は、閉じられます。デフォルトでは、このキュー・スペースにプロセスがアタッチされている場合、またはキュー・スペースのいずれかのキューにリクエストが存在する場合にはエラーが戻されます。リクエストが入っているキューの破棄については、qdestroy
コマンドを参照してください。-f
オプションを指定すると、キューにメッセージがあったり、キュー・スペースにプロセスがアタッチされている場合でも、すべてのキューを「強制的に」削除することができます。このコマンドは、-y
オプションを指定していない場合に確認のためのプロンプトを表示します。コマンドが正常に完了すると、指定されたキュー・スペースの一時的メッセージはすべて失われます。
qspl
) [queue_space_name
]
qspacecreate
で作成した際の値、またはqspacechange
で最後に変更した際の値)を表示するだけでなく、このコマンドでは、すべてのキュー・スペース・エクステントのサイズが表示されます。システム予約メモリーの容量と構成済の共有メモリーの合計容量も表示されます。共有メモリー・リソース用に割り当てられるメモリー量が、バイト単位(b
)で要求したときの量と一致しない場合もあります。説明と例については、qspacecreateの -n nonpersistent_msg_memoryオプションを参照してください。
quit
(q
)
verbose
(v
) [{off
| on
}]
!
shellcommand
!!
#
[text
]
$ QMCONFIG=/dev/rawfs qmadmin
qmadmin - Copyright (c) 1987 ATT; 1991 USL. All rights reserved.
QMCONFIG=/dev/rawfs
# create the list of devices on which the queue space
# can exist; specify two devices, 80000 and 600
# blocks, respectively
# NOTE: the first one will actually contain the device list
#
# create first device on a raw slice
#
> crdl /dev/rawfs 0 80000
Created device /dev/rawfs, offset 0, size 80000 on /dev/rawfs
#
# create another device on a UNIX file
#
> crdl /home/queues/FS 0 600
Created device /home/queues/FS, offset 0, size 600 on /dev/rawfs
#
# if you want a list of the device list
#
> v Verbose mode is now on
> lidl
universal device index. 0:
name: /dev/rawfs
start: 0
size: 20000
free space map(1 entry used 47 available):
size[1]: 79974 addr[1]: 26
universal device index. 1:
name: /home/queues/FS
start: 0
size: 600
free space map(1 entry used 47 available):
size[1]: 600 addr[1]: 0
#
# create a queue space
#
> qspacecreate
Queue space name: myqueuespace
IPC Key for queue space: 42000
Size of queue space in disk pages: 50000
Number of queues in queue space: 30
Number of concurrent transactions in queue space: 20
Number of concurrent processes in queue space: 30
Number of messages in queue space: 20000
Error queue name: ERRORQ
Initialize extents (y, n [default=n]): y
Blocking factor [default=16]: 16
....................
#
# open queue space
#
> qopen myqueuespace
#
# use queue space defaults for queue
> qcreate
Queue name: service1
queue order (priority, time, fifo, lifo): fifo
out-of-ordering enqueuing (top, msgid, [default=none]): top,msgid
retries [default=0]: 1
retry delay in seconds [default=0]: 30
High limit for queue capacity warning (b for bytes used, B for blocks used,
% for percent used, m for messages [default=100%]): 100m
Reset (low) limit for queue capacity warning [default=0m]: 50
queue capacity command: /usr/app/bin/mailadmin myqueuespace service1
#
# get out of the program
#
> q
キューの管理者はOracle Tuxedo管理者と同じでなければなりません。キューが存在するデバイスは、管理者が所有しなければならず、qmadmin
は、キューの管理者としてのみ実行できます。キューに割り当てられたIPCリソースはすべて、キューの管理者によって所有され、モード0600で作成されます。
qmadmin
は、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
qchange ...Queue capacity
コマンドなど、qmadmin()
セッション内で構成したコマンドを実行するために、WindowsのCreateProcess()
関数は、子プロセスをDETACHED PROCESS
として生成します。このようなプロセスには、標準入出力のための関連コンソールがありません。したがって、たとえば、標準コマンドライン構文を使ってdir
やdate
などの組込みコマンドを実行するqchange ... Queue capacity
を設定した後で、標準出力をファイルにパイプまたはリダイレクトすると、コマンド実行が完了した時点でそのファイルは空になります。
この問題を解決する方法として、たとえば、qchange ... Queue capacity command
を実行するために、date /t > x.out
コマンドでファイルのdate
情報を取得します。この処理を対話的に行うには、次のような手順で実行します。
qmadmin
> qopenyourQspace
> qchangeyourQname
>go through all the setups... the threshold queue capacity warning,
and so on> "Queue capacity command: " cmd /c date /t > x.out
この処理をyourFile
.cmd
などのコマンド・ファイルから行う場合は、date /t > x.out
コマンドをyourFile
.cmd
に追加し、次のように実行します。
qmadmin
> qopenyourQspace
> qchangeyourQname
>go through all the setups... the threshold queue capacity warning,
> "Queue capacity command: "
and so onyourFile
.cmd
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
rex
pattern_file C_file
rexpattern
[file
. . . ]
引数なしで起動する場合、rex
は標準入力から正規表現を読み取り、初期化した文字配列を標準出力に書き込みます。通常、出力はCプログラムにインクルードされます。これにより、実行時間およびプログラムのサイズの両方を節約できます。コマンドrex
は、標準入力(通常は入力ファイルから切り替えられる)の正規表現をコンパイルし、出力を標準出力(通常は出力ファイルに切り替える)に書き込みます。
入力ファイルにはいくつかのパターンがあります。各形式は次のようになります。
このname
は出力配列で使用されるCの名前で、string
は二重引用符で囲んだ正規表現です。複数のstring
がname
の後にある場合は、1つのstring
に結合されます。(複数のstrings
は、形式を指定しやすいように配慮したものです。)パターンに二重引用符が含まれる場合は、前にバックスラッシュを付ける必要があります。
出力は、Cプログラムにインクルードされるかまたはコンパイルされ、後でロードされます。rex
出力を使用するCプログラムでは、rematch(abc,line,0)
は、名前がabc
である正規表現をline
に適用します。
cname “[a-zA-Z_][a-(3c)-Z0-9_]*”
tn “\\\\(([0-9]{3})$0\\\\)”
“([0-9]{3})$1”
“-”
“([0-9]{4})$2”
/* pattern: “[a-aA-Z_][a-zA-Z0-9_]*" */
char cname[] = {
040,0,0206,012,0,0210,0141,0172,0210,0101,0132,0137,
... };
/* pattern: "\\\\(([0-9]{3})$0\\\\)([0-9]{3})$1-([0-9]{4})$2" */
char tn[] = {
063,0,050,0202,0225,013,0,03,0206,06,0,0210,060,071,
... };
rex
に1つまたは複数の引数を指定して起動することにより、テストするデータをパターンと突き合せることができます。最初の引数は、残りの引数で指定される名前のファイルの各行に適用されるパターン(正規表現)として扱われます。ファイル名の引数が指定されない場合、標準入力が使用されます。特殊なファイル名-
は、標準入力を指す引数として使用できます。
一致するテキストがある場合、一致したものを含む行が出力され、行の一致した部分にアンダースコアが引かれます。さらに、指定されたサブ・パターン用に抽出したすべてのテキストが、別の行に出力されます。
... or 200 programmers in one week.
This sentense has 3 erors.
I need 12 bad men.
... or 200 programmers in one week.
-----
$0 = `200'
This sentense has 3 erors.
---
$0 = `3'
I need 12 bad men.
----
$0 = `12'
tpsubscribe(3c)の正規表現の情報
tlisten
[-d device] -l nlsaddr [-u {uid-# | uid-name}][-s][-n sec_principal_name][-c sec_principal_location][-p sec_principal_passvar] [-z bits] [-Z bits ][-j jmxaddr][-m jvm_min_mem][-M jvm_max_mem][-S][-C keyStore][-P keyStorePassword]
tlisten
は、ネットワーク独立のリスナー・プロセスで、Oracle Tuxedo ATMIアプリケーション・プロセッサ上でdaemonプロセスとして実行され、たとえばtmboot(1)
など、他のOracle Tuxedo ATMIプロセスに対してリモート・サービス接続を提供します。tlisten
では、次のコマンドライン・オプションが使用されます。
-d
device
-l
nlsaddr
tlisten
は、ローカル名の解決機能(通常DNS)を利用してhostname
のアドレスを見つけます。hostname
はローカル・マシンでなければなりません。ローカル名解決機能によってhostname
をローカル・マシンのアドレスに明確に解決します。 IPv4の場合、文字列#.#.#.#
はドットで区切った10進数の形式です。ドット区切りの10進数形式では、各#
には0
- 255
の数字を使用します。このドット区切りの10進数は、ローカル・マシンのIPアドレスを表します。どちらの形式の場合も、 port_number
はtlisten
プロセスが入力リクエストに対してリスンするTCPポート番号です。port_number
は0
- 65535
の数値または名前です。 注意: | 一部のポート番号は、お使いのシステムで使用されるトランスポート・プロトコル(TCP/IPなど)のために予約されている場合があります。予約されているポート番号を確認するには、トランスポート・プロトコルのドキュメントを調べてください。 |
port_number
に指定する名前は、ローカル・マシンのネットワーク・サービス・データベース内に存在する名前でなければなりません。アドレスは、先頭に「 0x
」をつけ、16進形式で指定することもできます。「 0x
」の後の各文字は、 0
- 9
の数字か、 A
- F
までの英字(大文字/小文字に関係なく)です。16進数の形式は、IPX/SPXやTCP/IPのような任意のバイナリ・ネットワーク・アドレスに使うことができます。アドレスはまた、任意の文字列として指定することもできます。値は、構成ファイル内のNETWORK
セクションのNLSADDR
パラメータに指定された値と同じでなければなりません。
-s
の
SSL
オプションにSSL
値を含める必要があります。
注意: | UBBCONFiG の*Resourcesセクションとtlisten SSL の設定が同期していない場合、アプリケーションは起動しません。 |
-n sec_principal_name
-c sec_principal_location
wallet.sec_principal_name c
を含むディレクトリの場所を指定します。-n
オプションに指定されたプリンシパル名のOracle Walletがこの場所に配置されます。 従来のTuxedoセキュリティ資格証明形式を使用する場合、これは、sec_principal_name
で指定されたプリンシパルの復号化(プライベート)キーを収めるファイルまたはデバイスの場所を指定します。 sec_principal_location
パラメータには最大1023文字を指定できます(最後のNULL文字を除く)。
-p sec_principal_passvar
-u
{uid-#
| uid-name
}
tlisten
は、指定されたユーザーとして動作します。このオプションにより、 root
によるシステムの初期化処理の一部としてtlisten
を起動できます。tlisten
の実行ユーザーがroot
である場合には、このオプションは必須です。したがって、tlisten
プロセスはroot
が実行したり、root
またはnon-root
として実行したりすることが可能です。tlisten
コマンドをroot
以外のユーザーが使用する場合には、 -u
オプションは必要はありません。root
以外のユーザーは-u
オプションを設定することはできますが、このオプションにはそのユーザー自身のユーザーIDにしか設定できないので、あまり意味はありません。プロセッサ上でのtlisten
プロセスは、使用するアプリケーション管理ユーザーIDが同じであるOracle Tuxedo ATMIアプリケーションすべてをサポートできます。
-z
[0
| 40
| 56
| 128|256
]
tlisten
との間のネットワーク・リンクを確立する場合の、最小レベルの暗号化を指定します。 0
は暗号化が行われないことを示し、 40
, 56
, 128
,および256
は暗号化キーの長さをビット単位で指定します。ここで指定する最小レベルの暗号化が満たされない場合、リンクの確立は失敗します。デフォルト値は0
です。 注意: | リンク・レベルの暗号化の値40は、後方互換性を維持するために提供されています。 256ビットの暗号化は、現時点ではSSLを使用している場合にのみ指定できます。 |
-z
[0
| 40
| 56
| 128|256
]
tlisten
との間にネットワーク・リンクを確立する場合の、最大レベルの暗号化を指定します。 0
は暗号化が行われないことを示し、 40
, 56
, 128
,および256
は暗号化キーの長さをビット単位で指定します。デフォルト値は128
です。
注意: |
-j jmxaddr
jmxaddr
で、埋込みJMXエージェントのRMIコネクタのアドレスを指定します。アドレスが他のプロセスに占有されていた場合、ULOGにエラーメッセージが出力され、JMXエージェントは起動しません。
注意: | MPドメインの場合、tlisten の-j オプションをすべてのマシン・ノードに構成する必要があります。 |
-m jvm_min_mem
-M jvm_max_mem
jvm_max_mem
の値をjvm_min_mem
の値より低く設定すると、JVMは作成されず、JMXエージェントは起動しません。デフォルトの値は500MBです。
-S
-C keyStore
-P keyStorePassword
tlisten
プロセスは、ほとんどのサービス・リクエストを認証します。tlisten
は、パスワードの一覧ファイルを読み取ります。サービスをリクエストするプロセスは、そのファイル内にあるパスワードを少なくとも1つ提示しなければなりません。APPDIR
環境変数が設定された場合、APPDIR/.adm/tlisten.pw
という名前のファイルからパスワードが取得されます。
注意: | パスワードが入力されると、tlisten.pw ファイルが暗号化されます。新しいパスワードを追加する場合は、tlistpwd(1) を使用する必要があります。新しいパスワードは画面には表示されません。 |
注意: | 既存のパスワードを削除するには、tlisten.pw の対応する行を削除する必要があります。tlisten パスワードを作成および使用する場合は、全く同じTUXDIR を使用する必要があります。 |
注意: | Tuxedo 11gR1をMPモードでマスターとして使用する際、旧バージョンのTuxedoをインストールしてインストール後にtlistenパスワードを変更しなかった場合、セキュリティ・ネゴシエーション・エラー・メッセージCMDTUX_CAT:4291 が表示されます。この問題を解決するには、(前のTuxedoバージョンで)1つの空白行を$TUXDIR/udataobj/tlisten.pw tail に追加する必要があります。 |
このファイルが見つからない場合、システムは、Oracle Tuxedo ATMIシステムがインストールされる際に作成されるTUXDIR/udataobj/tlisten.pw
を探します。長さがゼロであったり、パスワードがないファイルでは、パスワード・チェックが無効になります。この安全でないモードで実行すると、tlisten
やtlisten
に接続しているすべてのプロセスがユーザー・ログの警告メッセージを生成します。
tmboot
などのように、tlisten
からサービスをリクエストするプロセスは、認証の際に使用するパスワードをプロセスが稼働しているマシンのファイルから検索します。このとき、tlisten
と同じ方法でパスワード・ファイルを検索します。
APPDIR
は、tlisten
パスワード・ファイルの位置を検索するために設定します。 LD_LIBRARY_PATH
を設定する必要があります。tlisten
プロセスを開始する前にTUXDIR/lib
に設定してください。一部のUNIXシステムでは、別の環境変数が必要となる場合もあります。HP-UXシステムではSHLIB_PATH
環境変数を、AIXシステムではLIBPATH
環境変数を使用します。TMUSEIPV6
を使用する。n|N
にするとデフォルトのIPv4値になり、y|Y
にするとIPv6値に設定されます。MPモードでは、スレーブ・マシン上でtlisten
実行する前にTMUSEIPV6
にy|Y
を設定する必要があります。tlisten
を実行する前に、TUXDIR
を設定しエクスポートしておく必要があります。ULOGPFX
は、ログ・メッセージを格納しているファイルを送信するのに使用できます。注意: | インストールの間に管理パスワード・ファイルが作成されます。Oracle Tuxedo ATMIシステムでは、必要に応じて次のディレクトリでこのファイルを検索します。検索順序は次のとおりです。 |
注意: | 管理パスワード・ファイルが確実に見つかるように、必ずAPPDIR かTUXDIR 、またはその両方の環境変数を設定してください。 |
リンク・レベル暗号化機能がtlisten
とtmboot
などのリクエスト・プロセスとの間で動作している場合は、リンク・レベル暗号化を取り決め、アクティブにしてから認証します。
SSL暗号化機能がtlisten
とtmboot
などのリクエスト・プロセスとの間で動作している場合は、SSL暗号化を取り決め、アクティブにしてから認証します。
tlisten
プロセスは通常、SIGTERM
シグナルを送ることによってしか終了できません。
システムの起動時、アプリケーションごとに1つのtlisten
プロセスを起動することをお薦めします。tlisten
を呼び出す前に、環境変数TUXDIR
およびAPPDIR
を設定しておく必要があります。
tlisten
プロセスを起動する別の方法として、手動による起動もできます。tlisten
プロセスをアプリケーション管理者が起動する場合、-u
オプションは省略できます。同じネットワーク・アドレスを使用してtlisten
コマンドを重複して呼び出すと、コマンドは自動的に終了し、該当するメッセージが記録されます。
tlisten
を実行するローカル・マシンがTCP/IPアドレス指定機能を使用しており、アドレスが155.2.193.18
、マシン名がbackus.company.com
であるとします。さらに、tlisten
はポート番号2334
でリクエストを受け取るとします。また、このポート番号2334
がbankapp-nlsaddr
という名前のネットワーク・サービス・データベースに追加されているとします。-l
オプションで指定するアドレスは、次に示す方法で表現できます。
//155.2.193.18:bankapp-nlsaddr
//155.2.193.18:2334
//backus.company.com:bankapp-nlsaddr
//backus.company.com:2334
0x0002091E9B02C112
最後の表現は16進数形式です。0002はTCP/IPアドレスの最初の部分です。091Eは、ポート番号2334が16進数に変換された値です。その後、IPアドレス155.2.193.12の各要素は16進数に変換されています。つまり、155は9B、2は02というようになります。
//[fe80::202:55ff:fecf:50b]:9010
注意: | 注意: IPv6では16進数形式はサポートされません。 |
STARLAN
ネットワークの場合は、通常、推奨アドレスuname
.tlisten
がユニークな名前になります。
コントロール・パネル・アプレットを介してリモートWindowsマシン上でtlisten
プロセスを起動するためには、そのリモート・マシンに対する管理者権限が必要です。
『ATMIアプリケーションにおけるセキュリティの使用』のATMIセキュリティの概要に関する項<Default ?Font>
tlistpwd(1)
- システムによって暗号化されたtlisten.pw
ファイルに対してパスワードを追加または変更するために使用
tlistpwd $TUXDIR
パスワードが入力されると、tlisten.pw
ファイルが暗号化されます。新しいパスワードを追加する場合は、tlistpwd(1)
を使用する必要があります。これにより新しいパスワードが$TUXDIR/udataobj/tlisten.pw
の最後に追加されます。既存のパスワードを削除するには、tlisten.pw
の対応する行を削除する必要があります。
注意: | 新しいパスワードは画面には表示されません。 |
tlisten
パスワードを作成および使用する場合は、全く同じTUXDIR
を使用する必要があります。
tlistpwd(1)
は、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
正常に実行された場合、tlistpwd
は終了し、0
を戻します。
tlistpwd /home/usr/tuxedo10gR3
Please enter the tlisten password:
Please verify the password:
tlistpwd: INFO: Password appended at the end of file "/home/usr/tuxedo10gR3/udataobj/tlisten.pw".
tlisten(1)
、『ATMIアプリケーションにおけるセキュリティの使用』のATMIセキュリティの概要に関する項<Default ?Font>
tmadmin
- Oracle Tuxedo掲示板コマンド・インタプリタ
tmadmin [ -r ] [ -c ] [ -v ]
tmadmin
は、このエントリに指定されるコマンドを使用して、掲示板や関連するエンティティの調査と修正の機能を単一プロセッサ、マルチ・プロセッサまたはネットワーク環境に提供します。TUXCONFIG
およびTUXOFFSET
環境変数を使用して、Oracle Tuxedo構成ファイルがロードされる場所とオフセットを判別します。tmadmin
では以下のオプションがサポートされます。
-c
tmadmin
を-c
オプションを指定して呼び出すと、構成モードになります。有効なコマンドは、default
、echo
、help
、quit
、verbose
、livtoc
、crdl
、lidl
、dsdl
、indl
およびdumptlog
のみです。tmadmin
は、非アクティブ・ノードを含むすべてのノードでこのモードで呼び出すことができます。ノードがアクティブとみなされるのは、tmadmin
が、(実行しているBBL
を介して)管理プロセスまたはクライアントとしてアプリケーションに参加できる場合です。
-r
-r
オプションを使用すると、tmadmin
は、管理者としてではなくクライアントとして掲示板に参加します。つまり、読取り専用モードをリクエストします。これは、管理者プロセス用スロットを非占有状態にしておく場合に有用です。 注意: | -r オプションを使用すると、このオプションなしでtmadmin を実行した際に取得される情報の一部しか得られないことに注意してください。特に、tmadmin -r を実行した場合、リモート・サイトで動作しているサーバーの負荷値は取得できません。 |
tmadmin
プロセスのみです。Oracle Tuxedo管理者以外のユーザーが-r
オプションを指定し、セキュリティがオンになっている場合、ユーザーはパスワードを求められます。
-v
-v
オプションを使用してtmadmin
を実行すると、Oracle Tuxedoのバージョン番号とライセンス番号が表示されます。情報を出力した後、tmadmin
は終了します。その他2つのオプションは、-v
オプションと共に使用しても無視され、-v
オプションによってリクエストされる情報だけが表示されます。
通常、tmadmin
は、アクティブ・アプリケーション内のどのアクティブ・ノード上でも実行可能です。パーティション化されたアクティブ・ノードで実行する場合は、ローカル掲示板への読取り専用アクセスを行うコマンドに制限されます。このようなコマンドは、bbls
、bbparms
、bbstat
、default
、dump
、dumptlog
、echo
、help
、interfaceparms、printactiveobject、printclient
、printinterface、printfactory、printnet
、printqueue
、printroute、printserver
、printservice
、printtrans
、printgroup
、reconnect
、quit
、serverparms
、serviceparms
、verbose
、および構成コマンドです。パーティション化ノードがMASTER
のバックアップ・ノードの場合(構成ファイルのRESOURCES
セクションのMASTER
パラメータの2つ目のエントリとして指定される)、master
コマンドを使用すると、パーティション化されたアプリケーションのこの部分についてこのノードをMASTER
にすることもできます。
アプリケーションがアクティブ状態でない場合、tmadmin
はMASTER
プロセッサ上でしか実行できません。このモードでは、すべての構成モード・コマンドと共に、TLOG
コマンド(crlog
、dslog
およびinlog
)とboot
も利用できます。
tmadmin
が呼び出された後は、次に示す構文に従って、プロンプト(>
)からコマンドを入力してください。
共通して出現するいくつかの引数には、default
コマンドを使用してデフォルト値が与えられます。default
コマンドによって設定されたパラメータを受け付けるコマンドは、default
に値が設定されているかどうかを調べます。値が設定されていない場合は、エラー・メッセージが戻されます。
ネットワーク環境またはマルチ・プロセッサ環境では、default
machine
(UBBCONFIG
ファイルのMACHINES
セクションに指定される論理machine ID
(LMID
))を設定することで、1つの掲示板にアクセスできます。default
machine
にall
を設定すると、すべての掲示板にアクセスします。machine
にDBBL
を設定すると、特殊掲示板が使用されます。default
machine
はプロンプトの一部(たとえばMASTER>
)として表示されます。
default
コマンドによってmachine
が設定されていない場合、DBBL
が使用されます。SHM構成ではローカルBBLが使用されます。
コマンドのmachine
値は、通常はdefault
設定から取得できます(たとえば、printserver
)。ただし、この場合は注意が必要です。一部のコマンド(TLOG
コマンドなど)は、TUXCONFIG
で検出されたデバイスに対して作動するためです。DBBL
またはall
のdefault
設定によってエラーが生成されます。一部のコマンド(logstart
など)では、コマンドラインでmachine
の値を指定する必要があります。この値は、-m
オプションの引数としては表示されません。
一度設定したデフォルト値は、default
コマンドで変更しないかぎり、セッション終了まで有効です。このデフォルト値は、コマンドラインで明示的に値を入力してオーバーライドするか、「*」を入力して設定解除します。オーバーライドの効果は、コマンドの単一のインスタンスの間有効です。
tmadmin
コマンドの出力は、ページ別表示コマンドを指定することでページ別に表示できます。後述のpaginate
サブコマンドの説明を参照してください。
詳細情報または要約情報を出力するコマンドがあります。verbose
コマンドは、デフォルトの出力レベル設定に使用します。ただし、各コマンド(boot
、shutdown
およびconfig
を除く)には、そのコマンドのみ詳細または要約情報を出力するための-v
または-t
オプションがあります。要約モードで出力すると、一部の情報(LMID
またはGROUP
名、サービス名、サーバー名など)は省略されることがあります。省略された場合は、値の末尾にプラス記号(+)が付加されます。情報をすべて表示するには、詳細モードでコマンドを再入力します。
コマンドは、完全な名前または省略形(カッコ内に示す形式)で入力できます。その後に適切な引数を指定します。大カッコ[ ]で囲まれている引数は省略可能で、中カッコ{ }で囲まれている引数は、相互に排他的な選択肢を示します。大カッコで囲まれていないコマンドライン・オプションは、対応するデフォルトがdefault
コマンドで設定されている場合は、コマンドラインに指定しなくてもかまいません(任意に指定できます)。中カッコで囲まれた一連のオプションの後の省略記号({}...
)は、複数のオプションをコマンドラインに指定できることを示します(少なくとも1つのオプションは指定する必要があります)。
aborttrans
(abort
) [ -yes ] [-g groupname[-R rmid]] tranindex
groupname
が指定されると、指定サーバー・グループの指定されたトランザクション索引(tranindex
)に対応するトランザクションを中断させます。このオプションの指定がない場合は、トランザクションのコーディネータにグローバル・トランザクションの中断を通知します。トランザクションがすでに決定されており、その決定がコミットである場合は、aborttrans
は失敗します。索引には、printtrans
コマンドを前回実行したときの結果が使用されます。トランザクションを完全に終了させるには、そのトランザクションに関わっているすべてのグループに対してprinttrans
およびaborttrans
を実行する必要があります。-R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合にリソース・マネージャを指定するのに使用されます。-R
オプションは、-g
オプションとともに使用し、rmid
の値が1
以上31
以下でなければなりません。
advertise
(adv
) {-q qaddress [ -g groupname ]
[-i srvid] | -g groupname -i srvid} service[:func]
service
を関数func
にマッピングできます。qaddress
が指定されていない場合は、groupname
とsrvid
を指定し、サーバーを一意に識別する必要があります。このservice
をMSSQセットに追加すると、セットのすべてのサーバーがサービスを通知します。MSSQセットのすべてのサーバーがそのサービスを通知できない場合、通知は許可されません。「.」で始まるサービスは、システム・サーバーが使用するために予約されています。アプリケーション・サーバー用には通知できません。
bbclean (bbc)
machine
machine
に存在する掲示板およびDBBL
にアクセスするすべてのプログラムの整合性をチェックします。bbclean
は、使用不能のサーバーを正常に削除し、再起動可能とマークされている場合は再起動します。どのプロセスにも関連しなくなったリソースも削除します。bbclean
は最後に、DBBL
が各BBL
のステータスをチェックするようにします。いずれかのBBL
が指定したSCANUNIT
(秒)内に応答しない場合は、パーティション化されているものとしてマークされています。特殊掲示板のみを消去するには、machine
をDBBL
として指定する必要があります。SHMモードでは、BBL
で障害が発生してもbbclean
によって再起動されます。machine
パラメータは任意です。
bbparms
(bbp
)
bbsread
(bbls
) machine
bbstats (bbs)
boot (b) [
options
]
broadcast
(bcst
) [-m machine] [-u usrname] [-c cltname] [text]
text
でSTRING
型の型付きバッファです。text
の長さは80文字以内にする必要があります。text
が複数の語を含む場合は、二重引用符で囲む必要があります("
text text
"
)。パラメータが設定されない場合(デフォルトもない場合)、その識別子のワイルドカード値になります。
changeload
(chl
) [-m
machine
] {-q
qaddress
[-g
groupname
]-i
srvid
] -s
service
| -g
groupname
-i
srvid
-s
service
| -I interface
[-g
groupname
]} newload
newload
に変更します。qaddress
が指定されない場合は、groupname
とsrvid
の両方を指定する必要があります。CORBA環境ではinterface
を指定できます。machine
がall
に設定される場合、または何も設定されない場合は、すべてのマシンで変更が行われます。それ以外の場合、ローカルの変更が指定されたマシンで行われます。ローカルの変更は、その後のグローバル(またはローカル)の変更によってオーバーライドされます。
changemonitor
(chmo
) [-m machine] [-g groupname] [-i serverid] newspec
changepriority
(chp
) [-m machine] {-q qaddress [-g groupname]
[-i srvid] -s service | -g groupname -i srvid -s service | -I interface [-g groupname]} newpri
newpri
に変更します。qaddress
が指定されない場合は、groupname
とsrvid
の両方を指定する必要があります。CORBA環境ではinterface
を指定できます。machine
がall
に設定される場合、または何も設定されない場合は、すべてのマシンで変更が行われます。それ以外の場合、ローカルの変更が指定されたmachine
で行われます。ローカルの変更は、その後のグローバル(またはローカル)の変更によってオーバーライドされます。
changetrace
(chtr
) [-m machine] [-g groupname[-R rmid]] [-i srvid] newspec
-R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-R
オプションは-g
オプションとともに使用し、rmid
は1
以上31
以下にする必要があります。実行中の特定のサーバー・プロセスのトレース仕様を変更するには、-g
および-i
オプションを指定します。特定のグループで現在実行中のすべてのサーバー・プロセスの構成を変更するには、-g
オプションを-i
オプションなしで指定します。特定のマシンで実行中のすべてのクライアントおよびサーバー・プロセスの構成を変更するには、-m
オプションを指定します。-g
、-i
および-m
のいずれのオプションも指定しなかった場合は、デフォルトのマシンのすべての非管理のプロセスが対象となります。このコマンドは、現在実行中でないクライアントもしくはサーバー、またはワークステーション・クライアントの動作には影響を与えません。
changetrantime
(chtt
) [-m machine] {-q qaddress [-g groupname] -
[-i srvid] -s service | -g groupname -i srvid -s service | -I interface [-g groupname]} newtlim
newtlim
に変更します。qaddress
が指定されない場合は、groupname
とsrvid
の両方を指定する必要があります。CORBA環境ではinterface
を指定できます。machine
がall
に設定される場合、または何も設定されない場合は、すべてのマシンで変更が行われます。それ以外の場合、ローカルの変更が指定されたmachine
で行われます。ローカルの変更は、その後のグローバル(またはローカル)の変更によってオーバーライドされます。
committrans (commit) [ -yes ] [-g groupname[-R rmid]]
tranindex
tranindex
のトランザクションをコミットします。指定したサーバー・グループでトランザクションがプリコミットされていない場合、またはトランザクションが中断のみとして認識されている場合、committrans
は失敗します。索引には、printtrans
コマンドを前回実行したときの結果が使用されます。-yes
オプションを指定せずに、このコマンドを実行すると、処理を進める前に確認を求められます。
-R
rmidオプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-R
オプションは-g
オプションとともに使用し、rmid
は1
以上31
以下にする必要があります。
config
(conf
)
crdl
-b
blocks
-z
config
-o
configoffset
[ -O
newdefoffset
] [ newdevice
]
blocks
によって、デバイスに割り当てられる物理ブロック数が指定されます。デフォルトのblocks
値は1000ブロックに初期化されます。configoffset
には、領域の割当てを開始するブロック番号を指定します。-o
オプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSET
の値が使用されます。FSOFFSET
が指定されない場合、デフォルトは0です。config
は最初のデバイス(デバイス・リストを含む)を指します。絶対パス名(先頭が/)を指定する必要があります。-z
オプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG
環境変数で指定されるパスが使用されます。crdl
コマンドのnewdevice
引数を指定する場合は、作成するデバイスを指す絶対パス名(先頭が/)を指定する必要があります。このパラメータが指定されない場合、newdevice
のデフォルトはconfigデバイスになります。newdefoffset
では、newdevice
の開始位置のオフセットを指定します。-O
(大文字のO)オプションが指定されない場合、デフォルトは0 (ゼロ)です。
crlog
(crlg
) -m
machine
machine
(「DBBL」または「all」は設定できません)に対してDTPトランザクション・ログを作成します。構成ファイルTLOG
がそのマシン用に定義されていなければ、エラーになります。このコマンドはTUXCONFIG
ファイルを参照して、TLOG
を格納しているOracle Tuxedoファイル・システム、そのファイル・システム内でのTLOG
の名前、オフセットおよびサイズを判別します(「UBBCONFIG(5)」を参照)。
default
(d
) [-g groupname] [-i srvid] [-m machine] [-u usrname] [-c cltname]
[-q qaddress] [-s service] [-b blocks] [-o offset] [-z config] [-a { 0 | 1 | 2}] [-I interface] [-B objectid] [-r routingname]
-a
オプションについては、printservice
を参照してください。CORBA環境では、対応する引数に、デフォルトのオブジェクトのインタフェース名、オブジェクトIDまたはファクトリ・ベースのルーティング名を設定することもできます。-Bを使用してオブジェクトIDパラメータが指定されている場合、マシン引数(-m
)を指定する必要もあります。すべてのデフォルト値は、引数として*を指定することにより設定を解除できます。machine
に設定されている場合、以降の検索を特殊掲示板から行わせるには、machine
にDBBL
を設定する必要があります。machine
の設定解除(-m
*
)はDBBL
の設定と等値です。default
コマンドを引数なしで入力した場合は、現在のデフォルトの値が表示されます。
dsdl
[ -yes
] -z
config
[ -o
offset
] dlindex
dlindex
引数は、デバイス・リストから削除するデバイスの、汎用デバイス・リストでの索引です。エントリ0を削除するには、最初にすべてのVTOC
ファイルおよび他のデバイス・リストを破棄する必要があります(エントリ0には、デバイス・リストと目次を保持するデバイスが含まれるため、エントリ0を破棄するとこれら2つの表も破棄されるためです)。config
には、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-z
オプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG
環境変数で指定されるパスが使用されます。offset
によって、config
にオフセットが指定されます。-o
オプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSET
の値が使用されます。FSOFFSET
が設定されていないと、デフォルトは0です。-yes
オプションを指定せずに、このコマンドを実行すると、処理を進める前に確認を求められます。
dslog
(dslg
) [ -yes
] -m
machine
machine
(「DBBL」または「all」は指定できません)のDTPトランザクション・ログを破棄します。TLOG
がマシンに定義されていない場合、アプリケーションが非アクティブでない場合、あるいは未処理のトランザクション・レコードがログに残っている場合には、エラーが戻されます。「未処理のトランザクション」とは、グローバル・トランザクションがすでにコミットされているが、トランザクションの終了がまだ書き込まれていないトランザクションのことです。このコマンドは、TUXCONFIG
ファイルを参照して、TLOG
を収めているOracle Tuxedoファイル・システム、およびそのファイル・システム内のTLOG
の名前を判別します。-yes
オプションを指定せずにこのコマンドを実行すると、処理を進める前に確認を求められます。
dump
(du
) filename
dumptlog
(dl
) -z
config
[ -o offset ] [ -n name ] [-g groupname[-R rmid]]
filename
filename
にTLOG
のテキストをダンプします。TLOG
は、config
とoffset
で指定された場所にあり、名前はname
で指定されます。-n
オプションが指定されず、デフォルトも設定されていない場合は、「TLOG」という名前が使用されます。config
には、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-z
オプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG
環境変数で指定されるパスが使用されます。
-o
offset
オプションを使用すると、config
のオフセットを指定できます。-o
オプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSET
の値が使用されます。FSOFFSET
が設定されていないと、デフォルトは0です。groupname
が指定されると、そのグループがコーディネータとなっているトランザクションのログ・レコードだけがダンプされます。-R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-R
オプションは-g
オプションとともに使用する必要があり、rmid
は、1
以上31
以下でなければなりません。
echo
(e
) [{off
| on
}]
help
(h
) [{command
| all
}]
command
を指定すると、そのコマンドの省略形、引数、および説明が出力されます。all
を指定すると、すべてのコマンドの説明が表示されます。引数をすべて省略すると、すべてのコマンドの構文が表示されます。
initdl
(indl
) [ -yes
] -z
config
[ -o
offset
] dlindex
dlindex
は、再初期化するデバイスの汎用デバイス・リストでの索引です。指定されたデバイスのすべての領域が解放されます。つまり、デバイスに格納されているすべてのファイルなどは上書きされることになります。このコマンドを使用するときは注意してください。-yes
オプションが使用されない場合、このコマンドは、実行の前に確認のためのプロンプトを表示します。config
には、汎用デバイス・リストを含むデバイスを指す絶対パス(先頭が/)を指定する必要があります。-z
オプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG
環境変数で指定されるパスが使用されます。-o
offset
オプションを使用すると、config
のオフセットを指定できます。-o
オプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSET
の値が使用されます。FSOFFSET
が設定されていないと、デフォルトは0です。
inlog
[ -yes
] -m
machine
default
machine
(「DBBL」または「all」は設定できません)のDTPトランザクション・ログを再初期化します。TLOG
がマシンに定義されていない場合、またはアプリケーションが非アクティブでない場合は、エラーが戻されます。未処理のトランザクションがTLOG
に存在する場合、それらのトランザクションの参加者として動作するリソース・マネージャ間でデータが矛盾することがあります。リソース・マネージャが、ローカル・トランザクションを正しくコミットせずに中断した可能性があるためです。このコマンドは、TUXCONFIG
ファイルを参照して、TLOG
を収めているOracle Tuxedoファイル・システム、およびそのファイル・システム内のTLOG
の名前を判別します。-yes
オプションを指定せずにこのコマンドを実行すると、処理を進める前に確認を求められます。
lidl -z
config
[ -o
offset
] [ dlindex
]
dlindex
が指定されない場合は、そのデバイス・リスト・エントリの情報のみが表示されます。config
には、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-z
オプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG
環境変数で指定されるパスが使用されます。-o
offset
オプションを使用すると、config
のオフセットを指定できます。-o
オプションを指定せず、デフォルト値も設定されていない場合は、環境変数FSOFFSET
の値が使用されます。FSOFFSET
が設定されていないと、デフォルトは0です。
livtoc -z
config
[ -o
offset
]
VTOC
表のすべてのエントリについて情報を表示します。各エントリについて表示される情報は、VTOC
表の名前、VTOC表のあるデバイス、デバイスの先頭からのVTOC
表のオフセットおよびこの表に割り当てられているページ数があります。config
には、汎用デバイス・リストを含むデバイスを指す絶対パス名(先頭が/)を指定する必要があります。-z
オプションが指定されず、デフォルトが設定されていない場合は、FSCONFIG
環境変数で指定されるパスが使用されます。-o
offset
オプションを使用すると、config
のオフセットを指定できます。-o
オプションが指定されていない場合は、環境変数FSOFFSET
の値が使用されます。FSOFFSET
が設定されていないと、デフォルトは0です。
loadtlog -m
machine filename
TLOG
のテキスト・バージョンを、指定したfilename
(dumptlog
により生成される)から、名前付きまたはdefault
machine
(「DBBL」または「all」にはできません)用の既存のTLOG
に読み取ってください。
logstart
machine
machine
上でTLOG
情報のウォーム・スタートを強制実行します。このコマンドは通常、loadtlog
の実行後、サーバー・グループの移行の際のディスク再配置に続いて行うようにしてください。
master
(m
) [ -yes
]
master
がバックアップ・ノードで動作していると、このバックアップ・ノードはマスター・ノードに変わり、DBBLが起動されて管理プロセスを引き継ぎます。バックアップ・ノードがマスターとして動作しているときに、master
をマスター・ノード上で実行すると、そのDBBLはマスター・ノードに移行し、バックアップ・ノードはその時点でマスター・ノードとしての働きを停止します。-yes
オプションを指定せずにこのコマンドを実行すると、処理を進める前に確認を求められます。
migrategroup
(migg
) [-cancel
] group_name
migrategroup
コマンドはサーバー・グループ名を引数とします。構成ファイルにMIGRATE
オプションとそのグループの代替位置の指定があれば、group_name
に属するすべてのサーバーは代替位置に移行します。移行の際には、次のコマンドを実行してサーバーを停止する必要があります。
shutdown -R -g
groupname
-R
オプションを指定すると、移行を実行できるように掲示板にサーバー名が保持されます。shutdown -R
の後で、migrategroup -cancel
groupname
というコマンドを使用すると、移行を取り消すことができます。 -cancel
オプションを指定すると、掲示板からサーバー名が削除されます。
migratemach (migm) [-cancel]
machine
shutdown -R -l
machine
migratemachine
コマンドを使用するとき、machine
に存在するすべてのサーバー・グループの代替位置が同じであることが必要です(そうでない場合は、migrategroup
を使用する必要があります)。Domainsゲートウェイ・サーバーを含むLMID
(マシン)の移行では、これらのゲートウェイ・サーバーの代替LMID
への移行が暗黙に行われます。-cancel
オプションを指定すると、すでに処理中の移行が取り消されます。つまり、tmshutdown -R
コマンドによってサーバーは停止されていますが、移行されていない状態です。
paginate
(page
) [{off | on
}]
でないかぎり、初期設定はonです。標準入力と標準出力の両方が端末デバイス
の場合にのみonに設定できます。
pg
がデフォルトのコマンドです。シェル環境変数PAGER
を使用すると、ページ別表示出力に使用されるデフォルトのコマンドをオーバーライドすることができます。
passwd
pclean
(pcl
) machine
pclean
を使用すると、まず、指定のmachine
に対して強制的にbbclean
を行い、再起動またはクリーンアップの必要なサーバーすべてを再起動またはクリーンアップします。machine
がパーティション化されている場合は、マシンmachine
上で稼働するよう指定されているプロセスとサービスに対応するエントリが、パーティション化されていない掲示板からすべて削除されます。machine
がパーティション化されていない場合には再起動またはクリーンアップできないプロセスまたはサービスはすべて削除されます。
printclient
(pclt
) [-m
machine
] [-u
usrname
] [-c
cltname
][-v
]
printclient
を実行すると、各コンテキストについて個別にエントリが生成されます。-m
、-u
および-c
オプションやデフォルト値の設定を使用して、マシン、ユーザー名またはクライアント名の任意の組合せに限定して情報を得ることができます。
pclt-v
を指定すると、リモート・クライアントの出力情報に「ネットワーク・アドレス」という表題とIPアドレス番号が追加されます。ネイティブ・クライアント名が指定されていない場合にpclt-v
を指定すると、「アプリケーション名またはプロセスID」という表題とプロセスID (PID)が追加されます。
printconn
(pc
) [-m
machine
]
-m
オプションやデフォルト値を使用することにより、情報を指定したマシンに対する接続に関するものに限定することができます。machine
の値に「all」または「DBBL」を設定すると、すべてのマシンの情報が出力されます。
printactiveobject (pao)
[-B
objectid
] [-m
machine
]
printfactory (pf)
printgroup
(pg
) [-m machine] [-g groupname]
-g
および-m
オプションやデフォルト値を使用して、特定のグループやマシンに関する情報を出力できます。サーバー・グループ名、サーバー・グループ番号、一次/代替LMIDおよび現在の位置などの情報が得られます。
printinterface (pif)
[-m
machine
] [-g
groupname
] [-I
interface
]
printnet
(pnw
) [ mach_list
]
printnet
コマンドでは、複数のマシン(LMID
)をカンマで区切ったリストを引数として指定できます。このようなリストを指定した場合は、指定マシンに関するネットワーク接続情報が表示されます。各マシンについて、パーティション化されているかどうかが示されます。マシンがパーティション化されていない場合、そのマシンが接続される他のマシンと、メッセージの入出力回数を表す情報が表示されます。
printqueue
(pq
) [qaddress
]
qaddress
コマンドラインまたはデフォルト値は指定したキューに関する情報を制限するために使用されます。出力される情報には、キューが存在するサーバー名、マシンの名前があります。
printroute (pr) [-r routingname]
printserver
(psr
) [-m machine] [-g groupname[-R rmid]] [-i srvid] [-q
qaddress]
-q
、-m
、-g
および-i
オプションを使用すれば、キュー、マシン、グループあるいはサーバーの任意の組合せに限定して情報を得ることができます。マルチコンテキスト・サーバーでprintserver
を実行すると、そのサーバーのすべてのコンテキストについて1つのエントリが表示されます。
-R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-R
オプションは-g
オプションとともに使用し、rmid
は1
以上31
以下にする必要があります。 冗長モードでは、サーバーの実行時のREQUEST_VERSION
値が出力されます。
printservice
(psc
) [-m machine] [-g groupname[-R rmid]] [-i srvid]
[-a { 0 | 1 | 2 }] [-q qaddress] [-s service]
アプリケーションおよび管理サーバーに関する情報を表示します。-q
、-m
、-g
、-i
および-s
オプションを使用すれば、キュー・アドレス、マシン、グループ、サーバーまたはサービスの任意の組合せに限定して情報を得ることができます。
-R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-R
オプションを-g
オプションとともに使用し、rmidが、1
以上31
以下でなければなりません。 -a
オプションを使用すると、サービスのクラスを選択できます。-a0
と指定すると、アプリケーション・サービスだけを表示します。-a1
と指定すると、アプリケーション・サービスに加えて、アプリケーションから呼び出せるシステム・サービスも表示します。-a2
と指定すると、上記の2つに加えて、Oracle Tuxedoから呼び出せるシステム・サービスも表示します。 冗長モードでは、アプリケーション・サービス・バージョン機能が有効な場合、サービスの実行時の REQUEST_VERSION
値とVERSION_RANGE
も出力されます。サービスの実行時のVERSION_POLICY
が"PROPAGATE
"の場合は、そのVERSION_POLICY
も出力されます。 同様に、冗長モードでは、ダイナミック・リクエスト・ブローカ機能が有効な場合、Dynamic Load
値が出力されます。
printtrans
(pt
) [-g groupname[-R rmid]] [-m machine]
machine
が「all」
または「DBBL」
の場合、アプリケーションのパーティション化されていないすべてのマシンでトランザクション表からの情報がマージされます。コマンドラインまたはデフォルトのgroupname
値によって、指定グループが参加している(コーディネータを含む)トランザクションに限定して情報を得ることができます。
aborttrans
またはcommittrans
でトランザクションを中断またはコミットするときに使用する索引、トランザクション・ステータス、参加リソースの数などが表示されます。 一方、冗長モードでは、トランザクション・タイムアウト情報や、コーディネータの識別情報などを含むサーバー・グループ名、ステータスなどの参加リソースに関する情報も表示されます。 -R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合にリソース・マネージャを指定するために使用されます。-R
オプションは、-g
オプションとともに使用し、rmid
の値が1
以上31
以下でなければなりません。
quit
(q
)
reconnect
(rco
) non-partitioned_machine1 partitioned_machine2
reconnect
では、パーティション化されていないマシンからパーティション化されたマシンへの新しい接続が強制的に行われます。接続がすでにアクティブな場合は、再接続の前に閉じられます。このとき、送信中のメッセージが失われて、トランザクション・タイムアウトが発生することがあります。マシンまたはネットワークの接続が停止する可能性がありますが、ネットワーク・インタフェース・ドライバはリクエストの受取りとバッファ処理を続けます。BRIDGE
に対してエラーは示されません。この場合、reconnect
は失敗し、リモート・マシンにアクセスできないことをBRIDGE
に強制的に認識させます。ほとんどのケースでは、ネットワークの問題が解決するとBRIDGE
は自動的に再接続されます。手動での操作(reconnect
の使用)は必要ありません。
resume
(res
) {-q
qaddress
| -g
groupname
| -i
srvid
| -s
service
| -I
interface
} . . .
-q
、-g
、-s
、-I、および-i
オプションを使用すると、再開するサービスに関して、キュー、グループ、サービス、インタフェース(CORBA環境のみ)およびサーバーの組合せを制限できます。(少なくとも、これらのオプションのうち1つを指定するか、デフォルトを設定しておく必要があります。)したがって、次のコマンドラインでは、アドレスがservq8
でキューに通知されたすべてのサービスを簡単に一時停止解除できます。
serverparms
(srp
) -g
groupname
[-R rmid]-i
srvid
-R rmid
オプションは、現在のグループが複数のリソース・マネージャ・グループの場合に、リソース・マネージャを指定するのに使用されます。-R
オプションを-g
オプションとともに使用し、rmidが、1
以上31
以下でなければなりません。
serviceparms (scp) -g
groupname
-i
srvid
-s
service
shmstats
(sstats) [ ex
| app
]
MODEL SHM
が構成ファイルに指定されると、shmstats
を使用して、より正確な統計を得ることができます。引数なしで入力すると、shmstats
は、掲示板構造体のbbparms.options
メンバーのTMACCSTATS
フラグから現在の設定を返します。これにより、現在収集しているのが正確な統計か概算の統計かがわかります。コマンドを入力するときにex
を指定すると、shmstats
がTMACCSTATS
フラグをオンにして、掲示板をロックし、サーバー表、キュー表およびサービス表のエントリのカウンタを0に戻します。
shutdown
(stop
) [options
]
tmshutdown()
コマンドと同様です。tmshutdown
のオプションを使用すると、停止させるサーバーを選択することができます。オプションの説明および使用上の制限事項については、「tmshutdown(1)」
を参照してください。
suspend
(susp
) {-q
qaddress
| -g
groupname
| -i
srvid
| -s
service
| -I
interface
} . . .
-q
、-g
、-s
、-I、および-i
オプションを使用すると、一時停止するサービスに関して、キュー、グループ、サービス、インタフェース(CORBA環境のみ)およびサーバーの組合せを制限できます。(少なくとも、これらのオプションのうち1つを指定するか、デフォルトを設定しておく必要があります。)したがって、次のコマンドでは、アドレスがservq8
でキューに通知されたすべてのサービスを簡単に一時停止できます。
unadvertise
(unadv
) {-q
qaddress
[-g
groupname
] [-i
srvid
] | -g
groupname
-i
srvid
} service
service
についてサービス表のエントリを除去します。qaddress
が指定されていない場合は、groupname
とsrvid
を指定し、サーバーを一意に識別する必要があります。キューまたはそのキューにある特定のサーバーを指定しても結果は同じです。複数サーバーの単一キュー(MSSQ)のセットからこのservice
を削除すると、service
の公開は、キューから読み込まれるすべてのサーバーから削除されます。
verbose
(v
) [{off
| on
}]
off
です。コマンドごとに、-v
(詳細)および-t
(簡潔)オプションを使用して、現在の設定を一時的にオーバーライドできます。
!
shellcommand
!!
#
[text
]
管理者としてtmadmin
を実行する場合、セキュリティ機構は通りません。すでにアプリケーション管理者のログインIDであることが確認済であるためです。
アプリケーション管理者以外がtmadmin
を実行できるのは、-r
オプションが使用されて、クライアントとしてアプリケーションにアクセスする場合です。そのようなユーザーが-r
オプションを付けてtmadmin
を呼び出すときに、アプリケーションのセキュリティがオンになっている場合は、アプリケーション・データにアクセスするためにアプリケーションのパスワードが必要です。標準入力が端末である場合、tmadmin
は、応答のエコーをオフの状態でユーザーにパスワードの入力を求めます。標準入力が端末でない場合は、パスワードはAPP_PW
環境変数から取り出されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、tmadmin
は異常終了します。
tmadmin
は、-r
オプションの指定がある場合、またはこれをアプリケーション管理者として登録できない場合、アプリケーション・クライアントとして働きます。このような場合、標準入力が端末でないときには、保護アプリケーションのアプリケーション・パスワードをAPP_PW
環境変数に設定しなければなりません。
システムのブート前にtmadmin
コマンドを入力すると、次のようなメッセージが表示されます。
No bulletin board exists. Entering boot mode
>
その後、tmadmin
はboot
コマンドが入力されるのを待機します。
-c
オプションを指定せずに、MASTER
以外の非アクティブなノードからtmadmin
コマンドが入力されると、次のメッセージが表示され、コマンドは終了します。
Cannot enter boot mode on non-master node.
間違ったアプリケーション・パスワードが入力されたり、入力したパスワードが環境を通してシェル・スクリプトで利用できない場合には、ログ・メッセージが生成され、次のメッセージが表示されてコマンドが終了します。
Invalid password entered.
tmadmin
は、相互操作可能なアクティブ・アプリケーション内であれば任意のノード上で実行可能です。ただし、利用可能なコマンドやコマンドライン引数は、tmadmin
が動作しているノードに対応するリリースでtmadmin
から利用できるものに限定されています。たとえば、broadcast
、passwd
およびprintclient
などのコマンドはリリース4.1のノードでは利用できません。
tmadmin
は、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
machine
オプションは、ネットワーク化されていない単一プロセッサ環境では何の効果も得られません。
tmboot(1)
、tmloadcf(1)
、tmshutdown(1)
、compilation(5)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmboot
[-l
lmid
][-g
grpname
] [-i
srvid
] [-s
aout
] [-o
sequence
][-S] [-A] [-b] [-B
lmid
][-e
command
] [-w] [-y] [-g]
[-n] [-c] [-m] [-M] [-d1]
tmboot
は、オプションの指定に従ってOracle Tuxedoアプリケーション全体あるいはその一部を起動します。tmboot
は、掲示板の管理者(構成ファイルのUID
で指示されている)あるいはroot
しか呼び出せません。また、tmboot
コマンドは、構成ファイルのRESOURCES
セクションでMASTER
として指定されているマシン、あるいはMASTER
として機能するバックアップ・マシン(つまり、tmadmin(1)
のmaster
コマンドによりDBBL
がすでに稼働状態である)上でしか呼び出せません。ただし、これは-b
オプションを指定した場合を除きます。この場合は、MASTER
と指定しなくても、バックアップ・マシンからシステムを起動できます。
オプションなしのtmboot
は、環境変数TUXCONFIG
とTUXOFFSET
に指定されている構成ファイルのSERVERS
セクションにリストされているすべての管理プロセスとすべてのサーバーを実行します。MODEL
がMP
の場合、RESOURCES
セクションのMASTER
パラメータで指定されたマシン上でDBBL
管理サーバーが起動します。管理サーバー(BBL
)は、MACHINES
セクションにリストされたすべてのマシンで起動されます。GROUPS
セクションの各グループの場合、TMS
サーバーは、グループ・エントリのTMSNAME
およびTMSCOUNT
パラメータに基づいて起動されます。すべての管理サーバーが起動された後で、SERVERS
セクションのサーバーが起動されます。TMS
またはグループのゲートウェイ・サーバーは、グループの最初のアプリケーション・サーバーが起動される前に起動されます。TUXCONFIG
ファイルは必要に応じてリモート・マシンに伝播されます。通常、tmboot
は、起動されたプロセスで初期化(tpsvrinit()
)が完了するのを待ってから、次のプロセスを起動します。
ゲートウェイ・サーバーの起動時には、ゲートウェイの管理サービスが公開され、そのゲートウェイのCLOPT
パラメータを基に外部サービスを表すアプリケーション・サービスが公開されます。外部サーバーの考え方をとる場合、これらのサーバーはこの時点でゲートウェイによりブートされます。
LMID
をブートすると、そのLMID
上の全グループがブートされることになります。
アプリケーション・サーバーの起動は、SEQUENCE
パラメータで指定された順序、または構成ファイルのサーバー・エントリ順で行われます(UBBCONFIG(5)に関する項を参照)。構成ファイルのSERVERS
セクションの複数のサーバーでSEQUENCE
パラメータが同じ場合、tmboot
はそれらのサーバーをパラレルで起動し、それらの初期化が完了するまでは処理を続行しません。SERVERS
セクションの各エントリには、MIN
パラメータとMAX
パラメータを指定できます。tmboot
は、-i
オプションが指定されないと、MIN
のアプリケーション・サーバー(サーバー・エントリでMIN
が指定されない場合、デフォルトは1)を起動します。-i
オプションを使用すると、MAX
になるまで個々のサーバーが起動されます。
サーバーが起動できない場合、診断が中央のイベント・ログおよび標準出力(-q
が指定されない場合)に書き込まれます。tmboot
は続行します。ただし、異常終了するプロセスがBBL
の場合、そのBBL
に依存するサーバーは警告なしで無視されます。異常終了するプロセスがDBBL
の場合、tmboot
は構成ファイルの残りの部分を無視します。サーバーに代替LMID
が構成されているとき、サーバーがプライマリ・マシンで起動できない場合、tmboot
は自動的にサーバーを代替マシンで起動しようとします。正常に起動すると、メッセージをDBBL
に送信して、TUXCONFIG
のサーバー・グループ・セクションを更新します。
SERVERS
セクションのサーバーの場合、CLOPT
、SEQUENCE
、SRVGRP
およびSRVID
のみがtmboot
によって使用されます。これらはまとめてサーバーの起動パラメータと呼ばれます。いったんサーバーが起動すると、構成ファイルを読み取って、実行時パラメータを探します。(パラメータの詳細については、「UBBCONFIG(5)」を参照してください)。
管理サーバーおよびアプリケーション・サーバーはすべて、APPDIR
を現在の作業ディレクトリとしてブートされます。APPDIR
の値は、該当サーバーがブートされるマシンに対応する構成ファイル内のMACHINES
セクションで指定します。
サーバーの実行可能プログラムの検索パスはAPPDIR
、TUXDIR/bin
、/bin
、/usr/bin
およびMACHINE
のENVFILE
に指定されているPATH
です。この検索パスは、サーバーの絶対パス名が指定されていない場合にのみ使用されます。この検索パスの設定は、サーバーのENVFILE
に指定する値によって変更することはできません。
サーバーが起動されると、変数TUXDIR
、TUXCONFIG
、TUXOFFSET
およびAPPDIR
が、そのマシンの構成ファイルに指定された値で環境に配置されます。環境変数LD_LIBRARY_PATH
もすべてのサーバーの環境に配置されます。値はデフォルトでは$APPDIR:$TUXDIR/lib:/lib:/usr/lib:lib
になります。lib
は、マシンのENVFILE
にある最初のLD_LIBRARY_PATH=
行の値です。ENVFILEの構文の詳細については、「UBBCONFIG(5)」
を参照してください。一部のUNIXシステムでは、別の環境変数が必要となる場合もあります。HP-UXシステムではSHLIB_PATH
環境変数を、AIXシステムではLIBPATH
環境変数を使用します。
サーバーのULOGPFX
もまた、ブート時に、構成ファイルの該当マシンに対するパラメータに基づいて設定されます。パラメータの指定がないと、デフォルト値として$APPDIR/ULOG
が使用されます。
これらの処理はすべて、アプリケーションの初期化関数tpsvrinit()
が呼び出される前に行われます。
tmboot
のコマンドライン・オプションの多くは、システムのブート時の内容を制限するものであり、システムの一部のブートに使用することもできます。以下のオプションがサポートされています。
-l
lmid
LMID
パラメータがlmid
である各グループの場合、そのグループに関連するすべてのTMS
とゲートウェイ・サーバーがブートされ、そらのグループに関連してSERVERS
セクションに記述されているすべてのサーバーが実行されます。
-g
grpname
SRVGRP
パラメータがgrpname
であるグループの全TMS
およびゲートウェイ・サーバーが起動され、続いてそのグループに関連してSERVERS
セクションに記述されているすべてのサーバーが起動されます。TMS
サーバーは、グループ・エントリのTMSNAME
およびTMSCOUNT
パラメータに基づいて起動されます。
-i
srvid
-s
server name
SERVERS
セクションに記述されている全サーバーが、サーバー名とMIN値で実行されます。MIN値が0のサーバーは実行されません。 このオプションは、TMSおよびゲートウェイ・サーバーをブートするときに使用することもできます。通常、このオプションは-g
オプションと一緒に使用します。
-o
sequence
-S
-A
MACHINES
セクションのマシンのすべての管理サーバーが実行されます。このオプションを使用すると、DBBL
とすべてのBBL
およびBRIDGE
プロセスが正しい順序で起動されます。(-M
オプションの説明も参照してください。)
-b
-B
lmid
-m
1-n
MIN
値を、共通のMIN
値で一時的にリセットします。たとえば、-s server1 -m5
と指定すると、server1という名前のすべてのサーバーがMIN=5
にリセットされます。このオプションで指定できるサーバーの最小数は1
です。最大数の制限はありませんが、あまり多く指定しないよう注意してください。
-M
MODEL
がMP
の場合、RESOURCES
セクションのMASTER
パラメータで指定されたマシン上でDBBL
管理サーバーが起動します。また、BBL
がMASTER
マシン上で起動され、LAN
オプションとNETWORK
エントリが構成ファイルに指定されている場合には、BRIDGE
も起動されます。
-d1
-e
command
command
が実行されます。command
には、SHELL
環境変数に指定されたコマンド・インタプリタで認識されるプログラム、スクリプト、または一連のコマンドを指定できます。これにより、起動手順で問題が発生したときに修正する機会が得られます。command
に空白が含まれる場合は、文字列全体を引用符で囲む必要があります。このコマンドは、tmboot
が実行しているマシンで実行されます。サーバーが起動されているマシンではありません。 注意: | Windows 2003システムでリダイレクトまたはパイプを選択する場合は、以下のいずれかの方法を使用してください。 |
-w
tmboot
にサーバーが初期化を完了するのを待たずに別のサーバーを起動するように通知します。このオプションの使用には、十分な注意が必要です。BBL
は、有効なDBBL
の存在に依存します。通常のサーバーは、それらが配置されるプロセッサ上でBBL
が実行されていることを必要とします。サーバーが同期的に開始されていない場合、これらの条件は保証されません。サーバーにシーケンス番号がある場合、このオプションは通常行われる待機をオーバーライドします。
-y
yes
の答えを指定します。(このプロンプトが表示されるのは、制限するオプションを指定せずにコマンドを入力した場合のみです。)
-q
-n
-c
-l
、-g
、-i
、-o
および-s
オプションを組み合せて使用すると、指定されたすべての条件を満たすサーバーのみが起動されます。-l
、-g
、-s
および-T
オプションを使用すると、TMS
サーバーが起動します。-l
、-g
および-s
オプションを使用すると、ゲートウェイ・サーバーが起動します。-l
、-g
、-i
、-o
、-s
および-S
オプションは、アプリケーション・サーバーに適用されます。アプリケーション・サーバーを起動するオプションが異常終了するのは、BBL
がマシンにない場合です。-A
、-M
および-B
オプションは、管理プロセスのみに適用されます。
標準入力、標準出力、標準エラー出力の各ファイル記述子は、ブートされたサーバーについてはすべて閉じられます。
tmboot
は、相互運用可能なアプリケーション内の最上位のリリースが提供されているマスター・ノード上で実行しなければなりません。tmboot
は、最新リリースをサポートしないサイトのワークステーション・リスナーなどの管理サーバーのブートを行うことにつながる構成ファイル内の条件を検出し報告します。
tmboot
は、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
インストールの間に管理パスワード・ファイルが作成されます。必要に応じて、Oracle Tuxedoシステムはこのファイルを次のディレクトリから検索します。最初にAPPDIR/.adm/tlisten.pw
、次にTUXDIR/udataobj/tlisten.pw
の順序で検索します。パスワード・ファイルが確実に見つかるように、必ずAPPDIR
またはTUXDIR
(あるいは両方)の環境変数を設定してください。
リンク・レベルの暗号化機能がtmboot
とtlisten
の間で稼働している場合には、リンク・レベル暗号化はメッセージが認証されるプロセスを保護するために最初に調整され、またアクティブ化されます。
TUXCONFIG
として、存在しないファイルが設定されると、次に示す2つの致命的なエラー・メッセージが表示されます。
tmboot
はサーバーのブートに失敗すると、終了コード1を返して終了します。後でユーザー・ログを調べることにより、エラーの詳細を知ることができます。成功した場合は、tmboot
は終了コード0を返して終了します。
tmboot
が、アクティブでない非マスター・ノード上で実行されると、次のような致命的エラー・メッセージが表示されます。
tmboot cannot run on a non-master node.
tmboot
が、実際のマスター・ノードでないアクティブなノード上で実行されると、次のような致命的エラー・メッセージが表示されます。
tmboot cannot run on a non acting-master node in an active application.
複数のTUXCONFIG
ファイルで同じIPCKEY
が使用されていると、tmboot
は異常終了して次のメッセージを表示します。
Configuration file parameter has been changed since last tmboot
LAN以外の構成でMACHINES
セクションに複数のノード名があると、次のような致命的エラー・メッセージが表示されます。
Multiple nodes not allowed in MACHINES for non-LAN application.
tlisten
がLANアプリケーションのMASTER
マシン上で実行していない場合、警告メッセージが表示されます。この場合、tmadmin(1)
はリモート・マシンの管理者モードで実行できません。処理が読取りのみに制限されます。これはまた、バックアップ・サイトが障害後にマスター・サイトを再起動できないことを意味します。
CS0
およびCS1
というローカル名のマシン上にあるサーバーたけを起動するには、次のようにします。
tmboot -l CS0 -l CS1
DBG1
という名前のグループに属するサーバーCREDEB
だけを起動するには、次のようにします。
ローカル名がPE8
のマシン上のBBL
、およびPE8
の位置にあるすべてのサーバーをブートするには、次のようにします。
tmboot -B PE8 -l PE8
この構成で必要とされる最小限のIPCリソースを表示するには、次のコマンドを入力します。
Ipc sizing (minimum Oracle Tuxedo values only) ...
Fixed Minimums Per Processor
SHMMIN: 1
SHMALL: 1
SEMMAP: SEMMNI
Variable Minimums Per Processor
SEMUME, A SHMMAX
SEMMNU, * *
Node SEMMNS SEMMSL SEMMSL SEMMNI MSGMNI MSGMAP SHMSEG
------ ------ ------ ------ ------ ------ ------ ------
sfpup 60 1 60 A + 1 10 20 76K
sfsup 63 5 63 A + 1 11 22 76K
where 1 = A = 8.
1プロセッサ当たりのアプリケーション・クライアントの数を各MSGMNI
値に追加します。MSGMAP
はMSGMNI
の2倍にします。SHMMIN
は常に1にセットします。
IPCの必要最小限の条件は、使用マシンに設定したパラメータと比べて検討することができます。これらのパラメータの変更方法については、お使いのマシンのシステム管理者のドキュメントを参照してください。-y
オプションを使用した場合、その結果得られる表示は上記の例とは若干異なります。
tmboot
コマンドは、ハングアップ・シグナル(SIGHUP
)を無視します。ブート時にシグナルが検出された場合でも、プロセスは続行します。
-c
オプションを使用した場合に表示される最小限のIPCリソースは、指定された構成ファイルに記述されている構成にのみ適用されます。リソース・マネージャまたはその他のOracle Tuxedo構成で必要となるIPCリソースについては、計算上は考慮されません。
tmadmin(1)
、tmloadcf(1)
、tmshutdown(1)
、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmconfig
、wtmconfig
- ネイティブ・クライアントまたはワークステーション・クライアントとして実行中のOracle Tuxedoアプリケーションに関する情報を動的に更新および検索
tmconfig
wtmconfig
tmconfig
は対話型プログラムであり、Oracle Tuxedoアプリケーションの動作中に、構成ファイル・パラメータまたはMIB属性の更新、およびTUXCONFIG
ファイルのセクションへのレコードの追加を行います。tmconfig
は、追加、変更、または検索対象の入力フィールド値があるバッファを管理します。操作が完了すると、tmconfig
は出力フィールド値と状態を表示します。ユーザーは任意のテキスト・エディタを使用して入力バッファを更新できます。
tmconfig
はOracle Tuxedoのネイティブ・クライアントで、wtmconfig
はワークステーション・クライアントです。これらは、tmadmin
/printclient
コマンド・シーケンスの出力で確認できます。アプリケーションがSECURITY
機能を私用している場合、tmconfig
によってアプリケーション・パスワードの入力が求められます。
注意: | tmconfig はOracle Tuxedoネイティブ・クライアントであり、wtmconfig はOracle Tuxedoワークステーション・クライアントであるという以外に双方の違いはなく、tmconfig とwtmconfig は共に同じ機能を備えているため、このリファレンス・ページではtmconfig を中心に説明していきます。ここで説明する機能はwtmconfig も備えていると考えてかまいません。 |
tmconfig
は最初に、目的のセクションを指定するよう求め、続いてそれに対する操作の内容を指定するよう求めます。セクションを求めるプロンプトは次のとおりです。
Section: 1) RESOURCES, 2) MACHINES, 3) GROUPS 4) SERVERS 5)SERVICES
6) NETWORK 7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS
12) INTERFACES [1]:
デフォルト・セクションは、プロンプトの終わりに大カッコ内に表示されます。
続いて、目的の操作内容を求めるプロンプトが次のように表示されます。
Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE
6) CLEAR BUFFER 7) QUIT [1]:
デフォルトの操作内容は、プロンプト末尾の大カッコ内に表示されます。デフォルトの操作を選択する場合は、[Enter]キーを押します。他の操作を選択する場合は、該当する番号を入力して[Enter]キーを押します。
FIRST
- 指定されたセクションの最初のレコードを表示します。キー・フィールドは不要です。(入力バッファにあるキー・フィールドは無視されます。)継続
- 入力バッファ内のキー・フィールドに基づいて、指定したセクションから次のレコードを取り出します。照会
- キー・フィールドで指定したセクションから、指定したレコードを取り出します。ADD
- 指定したセクションに、指定したレコードを追加します。未指定のフィールドは(必須でないかぎり)、UBBCONFIG(5)で指定されたデフォルト値をとります。すべてのフィールドの現在の値は、出力バッファ内に戻されます。この操作は、Oracle Tuxedoシステム管理者だけが行えます。UPDATE
- 指定したセクションの入力バッファ内にある、指定したレコードを更新します。入力バッファ内で指定されていないフィールドは変更されません。すべてのフィールドの現在の値は、入力バッファ内に戻されます。この操作は、Oracle Tuxedo管理者だけが行えます。CLEAR BUFFER
- 入力バッファをクリアします(すべてのフィールドは削除されます)。この操作の後で、tmconfig
によって再度セクションを指定するように求められます。終了
- プログラムを正常に終了します(クライアントは終了します)。プロンプトで値q
を入力してもプログラムを終了できます。 管理者の操作を行う場合、実効ユーザー識別子が、このプログラムを実行するマシンのOracle Tuxedo管理者ユーザー識別子(UID)と同じでなければなりません。レコードの更新や追加を行う場合には、tmloadcf(1)
が使用する検証機能とすべてのデフォルト値が有効になります。
次にtmconfig
は、入力バッファを編集するかどうかを確認するプロンプトを表示します。
Enter editor to add/modify fields [n]?
値y
を入力すると、入力バッファが一時ファイルに変換され、テキスト・エディタが実行されます。環境変数EDITOR
を使用して、使用するエディタを決定します。デフォルト値はed
です。入力フォーマットはフィールド名とフィールド値の組合せです。この後の「入力フォーマット」の項を参照してください。その後の項の表に、各UBBCONFIG
セクションに関連付けられているフィールド名を示します。フィールドのセマンティクスと、関連する範囲、デフォルト値、制限などは、UBBCONFIG(5)に関する項目を参照してください。権限値は8進数ではなく10進数で指定されることに注意してください。ほとんどの場合、フィールド名はUBBCONFIG
ファイルのKEYWORD
と同じで、接頭辞として「TA_
」が付いています。
ユーザーが入力バッファの編集を完了すると、tmconfig
はその内容を読み取ります。特定のフィールド名についての行が複数ある場合、最初のオカレンスが使用され、他のオカレンスは無視されます。何らかのエラーが発生すると、構文エラー・メッセージが表示され、その問題を訂正するかどうかを確認するプロンプトが表示されます。
Enter editor to correct?
問題を訂正しない場合(レスポンスn
)は、入力バッファにフィールドは含まれません。問題を訂正する場合は、エディタが再度実行されます。
最後に、操作を実行するかどうかを確認するプロンプトが表示されます。
Perform operation [y]?
操作が完了すると、tmconfig
は(「戻り値TAOK」
のように)戻り値を表示し、続いて出力バッファのフィールドを表示します。次に、プロセスが再開され、セクションを求めるプロンプトが表示されます。すべての出力バッファ・フィールドは、バッファがクリアされないかぎり、入力バッファ内で利用できます。
いつでもブレークを入力して、セクションを求めるプロンプトでの対話を再開できます。
QUIT
を選択すると、構成ファイルのバックアップ(テキスト形式)を作成するかどうかを確認するプロンプトが表示されます。
Unload TUXCONFIG file into ASCII backup [y]?
バックアップの作成を選択すると、ファイル名の入力を求めるプロンプトが表示されます。
バックアップ・ファイルのファイル名は? [UBBCONFIG]:
無事にバックアップが完了すると、バックアップ・コピーが作成されたことを示すメッセージを表示します。失敗した場合はエラー・メッセージを表示します。
入力パケットは、次のようにフォーマットされた行で構成されます。
フィールド名とフィールド値は1つまたは複数のタブで区切ります。
長いフィールド値の場合、継続行に1つまたは複数のタブを付けることによって、次の行にわたるようにできます(これらのタブは、tmconfig
に読み戻されるときに取り除かれます)。
表示できない文字をフィールド値に入力したり、タブをフィールド値の先頭に付けたりするには、バックスラッシュを入力し、その後に必要な文字を2文字の16進表現で入力します(UNIXリファレンス・マニュアルでASCII(5)の項を参照)。たとえば、空白は「\20
」として入力データに入力できます。バックスラッシュそのものは、2つのバックスラッシュ記号を使用して入力できます。tmconfig
では、このフォーマットのすべての入力が認識されますが、16進フォーマットが表示できない文字の場合に最も役立ちます。
動的な再構成機能については、次のような全般的な制限事項があります。
LMID
レベルのフィールドは、LMID
がブートされている間は変更できません。同様に、GROUP
レベルのフィールドはGROUP
がブートされている間は変更できません。RESOURCES
パラメータは実行中のシステムでは変更できません。RESOURCES
セクションにいるときに、MACHINES
セクションのENVFILE
パラメータを更新しようとした場合、tmconfig
がTAOK
を返して操作が正常終了したように見えますが、アンロードされたUBBCONFIG
ファイルは変更されていません。以前のOracle Tuxedoシステムのリリースでは、すべてのアプリケーション構成は、アプリケーションのすべての構成パラメータが定義されたUBBCONFIG
ファイルというテキスト・ファイルを編集することで実現していました。その後のリリースでは、tmloadcf(1)
コマンドを実行することにより、UBBCONFIG
ファイルをTUXCONFIG
というバイナリ・ファイルにコンパイルするようになりました。さらに新しくなったシステムでは、各種TUXCONFIG
パラメータの動的更新(アクティブなシステムの更新)をサポートするtmconfig
コマンドが導入されるようになりました。
システム6以降では、Oracle Tuxedoのリソースをクラスや属性に再定義するOracle Tuxedo管理情報ベース(MIB)が導入されました。MIBの導入と同時に、Oracle Tuxedoシステムは、管理者(またはユーザー)がアプリケーションの属性にプログラムでアクセスし、変更することを可能にする管理APIも提供しました。
1つの例外を除き、『Oracle Tuxedoコマンド・リファレンス』<Default ?Font>のこのエントリ(つまり、tmconfig, wtmconfig(1)
)ではMIBの様々なクラスの簡単な説明のみが記載されます。例外はNetworkクラスです。これは、ここでtmconfig()
について詳しく説明します。その他のセクションの詳細については、「TM_MIB(5)」を参照してください。
従来のtmconfig
表には、フィールドの更新が可能かどうかを示す値を入れる列がありました。これについてはMIBのリファレンス・ページで説明していますが、形式について多少注意が必要です。MIB(5)に関する項でPermissionsの説明を参照してください。MIB表のPermissions列は、ファイルへのアクセスを制限するために使用される読取り、書込みおよび実行権限と似ています。ただし、情報量は多く、単純なファイル権限よりも多くの制御が指定されます。たとえば、MIB表のPermissions列の値は、システムがアクティブなときにフィールドを変更できるかどうかを示します。
tmconfig
を使用する前にはMIB(5)の説明をよくお読みください。
このセクションの属性については、「TM_MIB(5)」のT_DOMAIN
クラスの説明を参照してください。
このセクションについては、ADD
操作は使用できません。このセクションにはレコードが1つしかないので、RETRIEVE
操作はFIRST
操作と同じです(キー・フィールドは不要)。NEXT
操作は常に「レコードなし」が戻されます。
TA_LDBAL
、TA_CMTRET
およびTA_SYSTEM_ACCESS
に対する変更は、それ以後ブートされる新しいクライアントとサーバーに対してのみ適用されます。NO_OVERRIDE
の指定があり、指定アクセス・タイプと一致しない(PROTECTED
またはFASTPATH
)サーバー・エントリがある場合、TA_SYSTEM_ACCESS
は変更できません。TA_NOTIFY
とTA_AUTHSVC
に対する変更は、それ以後起動される新しいクライアントに対してのみ適用されます。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
このセクションの属性については、「TM_MIB(5)」のT_MACHINE
クラスの説明を参照してください。
RESOURCES
セクションのOPTIONS
に"LAN
"が指定されていないかぎり、マシンを追加することはできません。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
このセクションの属性については、「TM_MIB(5)」のT_GROUP
クラスの説明を参照してください。
このセクションの属性については、「TM_MIB(5)」のT_SERVER
クラスの説明を参照してください。
SERVERS
セクションでのパラメータの変更は、次回、関連するサーバーが起動(再開ではなく)された時点で有効になります。複数のサーバーがMSSQ
セットに定義されている場合(TA_RQADDR
を使用)、それらのサーバーは同じサービスを起動する必要があります(たとえば、TA_CLOPT
またはENVFILE
への変更は、現在起動しているサーバーのものではない起動中のサービスに影響してはなりません)。TA_MAX
が変更されると、サーバー・セットの1つ以上のサーバーが起動されないかぎり、新しいサーバー識別子に対する会話型サーバーの自動生成は実行されません。
このセクションの属性については、「TM_MIB(5)」のT_SERVICE
およびT_SVCGRP
クラスの説明を参照してください。
SERVICES
セクションで変更されたパラメータは、次回、そのサービスを提供するサーバーがブート(再開ではなく)された時点で有効になります。TA_ROUTINGNAME
の更新が可能なのは、TA_SRVGRP
フィールドに値が指定されていない場合、またはそのフィールドにNULL
が指定されている場合だけです。この場合、TA_ROUTINGNAME
属性は、一致するすべてのSERVICES
エントリで同時に更新されます。TA_ROUTINGNAME
はSERVICES
セクションのROUTING
に対応しています。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
次の表に、NETWORK
セクションのフィールド一覧を示します。
関連するLMID
がブートされている場合には、レコードを追加することはできません。
RESOURCES
セクションのOPTIONS
にLAN
がないかぎり、NETWORK
セクションに対する操作は何もできません。
上記のパラメータ以外の更新は、アンロードされたテキスト形式のバックアップ・ファイルには反映されません。
このセクションの属性については、「TM_MIB(5)」のT_ROUTING
クラスの説明を参照してください。
ROUTING
セクションは、システムが稼働状態にあるときには更新できません。掲示板のサイズを制御する、RESOURCES
セクションの3つのパラメータMAXDRT
、MAXRFT
、およびMAXRTDATA
が増加可能に設定されている場合、ROUTING
セクションの新しいエントリを追加できます。
このセクションの属性については、「TM_MIB(5)」のT_WSL
クラスの説明を参照してください。
ワークステーション・リスナー・サーバーのCLOPT
の更新は、SERVER
セクションを通じて行うこともできますが、T_WSL
クラスを使用してください。
このセクションの属性については、「TM_MIB(5)」のT_WSL
クラスの説明を参照してください。
このセクションの属性については、「TM_MIB(5)」のT_NETMAP
クラスの説明を参照してください。
このセクションの属性については、「TM_MIB(5)」のT_INTERFACE
クラスの説明を参照してください。
T_INTERFACE
クラスは、ドメインおよびサーバー・グループの両方のレベルでCORBAインタフェースの構成属性と実行時属性を表します。ファクトリ・ベースのルーティング(特定のサーバー・グループに処理を分散する機能)を実行しない場合には、CORBAインタフェースに必要なパラメータはありません。
tmconfig
をセキュアなアプリケーションで実行する場合は、アプリケーション・パスワードを指定しないとアプリケーションにアクセスできません。標準入力が端末である場合、tmconfig
は、応答のエコーをオフの状態でユーザーにパスワードの入力を求めます。標準入力が端末でない場合は、パスワードはAPP_PW
環境変数から取り出されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、tmconfig
は異常終了します。
ワークステーション・クライアントの場合、このコマンドはwtmconfig
です。UPDATE
およびADD
コマンドはサポートされていません(TAEPERM
が戻されます)。
tmconfig
は環境変数FIELDTBLS
およびFLDTBLDIR
を設定しなおして、${TUXDIR}/udataobj/tpadmin
フィールド表を取り出します。TUXDIR
を正しく設定しておかなければなりません。
APP_PW
は、標準入力が端末でない場合、保護アプリケーションのアプリケーション・パスワードに設定しなければなりません。
クライアントをOracle Tuxedoアプリケーションに結合する前に、いくつかの環境変数を設定しておく必要があります。
tmconfig
は、型付きバッファを割り当てることができない場合、該当ユーザーに対する/etc/passwd
エントリを判別できない場合、クライアント・プロセスになれない場合、入力バッファ編集用に/tmp
に一時ファイルを作成できない場合、あるいは環境変数FIELDTBLS
またはFLDTBLDIR
を設定し直すことができない場合には異常終了します。
各操作が完了した後、tmconfig
から出力される戻り値には、リクエストされた操作に関するステータスが示されます。戻り値には3つのクラスがあります。
次の戻り値は、権限に関する問題またはOracle Tuxedoの通信エラーを示しています。戻り値は、操作が正常に完了しなかったことを示しています。
TAEPERM
]
TAESYSTEM
]
TAEOS
]
TAETIME
]
以下の戻り値は、処理そのものの実行に問題があることを示します。通常は、入力バッファ内のアプリケーション・データに関するセマンティクスの問題です。文字列フィールドTA_STATUS
が出力バッファに設定され、問題を示します。文字列フィールドTA_BADFLDNAME
に、問題を引き起こした値が含まれるフィールドの名前が設定されます(エラーが1つのフィールドに関係している場合)。
TAERANGE
]
TAEINCONSIS
]
TAECONFIG
]
TAEDUPLICATE
]
TAENOTFOUND
]
TAEREQUIRED
]
TAESIZE
]
TAEUPDATE
]
TAENOSPACE
]
次の戻り値は、少なくともMASTER
サイトでは操作が成功したことを示します。
TAOK
]
TAUPDATED
]
TAPARTIAL
]
MASTER
サイトでは操作は成功しましたが、1つまたは複数の非MASTER
サイトで失敗がありました。それらの非MASTER
サイトには、無効またはパーティション化のマークが付けられます。詳細は、管理者ガイドを参照してください。
Oracle Tuxedoシステム・リリース4.0または4.1ノードが起動されている状態では、UPDATE
およびADD
操作は実行できません。これらの操作を行うには、前もってこれらのノードを停止しておかなければなりません。リブートすると、変更内容が有効になります。
When tmunloadcf(1)
を使用して構成内のエントリを表示する場合、フィールドの値が設定されていないとき(文字列の場合)、フィールド値が0のとき(整数の場合)、あるいはフィールドのデフォルト値に一致する場合、それらのフィールド値は表示されません。これらのフィールドは、tmconfig
を使用する際に常に出力バッファに存在します。この方法で、管理者がエントリを取り出しやすくし、また以前に設定されていないフィールドを更新しやすくします。エントリには、フィールド名が含まれ、タブが後に続きますが、フィールド値はありません。
次に挙げる例では、tmconfig
を使用して、ワークステーション・リスナー・サーバー上に指定されたネットワーク・アドレスを訂正しています。このアドレスはサーバー・セクションの最初のエントリになっていることがあります。この例で使用されているエディタはed(1)
です。
$ EDITOR=ed tmconfig
Section:1)RESOURCES
, 2)MACHINES
, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK
7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 12) INTERFACES [1]: 4
Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE
6) CLEAR BUFFER 7) QUIT [1]: 1
Enter editor to add/modify fields [n]? <return>
Perform operation [y]? <return>
Return value TAOK
Buffer contents:
TA_OPERATION 4
TA_SECTION 3
TA_SRVID 2
TA_MIN 1
TA_MAX 1
TA_RQPERM 432
TA_RPPERM 432
TA_MAXGEN 1
TA_GRACE 86400
TA_STATUS Operation completed successfully
TA_SRVGRP WDBG
TA_SERVERNAME WSL
TA_CLOPT -A -- -d/dev/tcp -M4 -m2 -x5 -n0x0002fe19c00b6d6b
TA_CONV N
TA_REPLYQ N
TA_RESTART N
Section:1)RESOURCES
, 2)MACHINES
, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK
7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 12) INTERFACES [4]: <return>
Operation: 1) FIRST 2) NEXT 3) RETRIEVE 4) ADD 5) UPDATE
6) CLEAR BUFFER 7) QUIT [1]: 5
Enter editor to add/modify fields [n]? y
240
/CLOPT/s/6d6b/690E/p
TA_CLOPT -A -- -d/dev/tcp -M4 -m2 -x5 -n0x0002fe19c00b690E
w
240
q
Perform operation [y]? <return>
Return value TAUPDATED
Buffer contents:
TA_OPERATION 1
TA_SECTION 3
TA_SRVID 2
TA_MIN 1
TA_MAX 1
TA_RQPERM 432
TA_RPPERM 432
TA_MAXGEN 1
TA_GRACE 86400
TA_STATUS Update completed successfully
TA_SRVGRP WDBG
TA_SERVERNAME WSL
TA_CLOPT -A -- -d/dev/tcp -M4 -m2 -x5 -n0x0002fe19c00b690E
TA_CONV N
TA_REPLYQ N
TA_RESTART N
Section:1)RESOURCES
, 2)MACHINES
, 3) GROUPS 4) SERVERS 5)SERVICES 6) NETWORK
7) ROUTING q) QUIT 9) WSL 10) NETGROUPS 11) NETMAPS 12) INTERFACES [1]: q
Unload TUXCONFIG file into ASCII backup [y]? <return>
Backup filename [UBBCONFIG]? <return>
Configuration backed up in UBBCONFIG
$ # boot the changed server
$ tmboot -s WSL -i 2
tmboot(1)
、tmloadcf(1)
、userlog(3c)、TM_MIB(5)、UBBCONFIG(5)
tmipcrm
- ローカル・マシンでOracle Tuxedo ATMIアプリケーションが割り当てたIPCリソースを削除
tmipcrm
[-y
] [-n
] [TUXCONFIG_file
]
tmipcrm
は、共有メモリー、メッセージ・キューおよびセマフォなど、Oracle Tuxedo ATMIアプリケーションによって割り当てられたIPCリソースをクリーンアップします。このコマンドは、シャットダウンの失敗などの通常ではないエラー状況が発生した後に通常実行されます。通常の状況では、Oracle Tuxedo ATMIシステムは、割り当てられたIPCリソースをすべてシャットダウン時にクリーンアップします。削除されたIPCリソースには、Oracle Tuxedo ATMIのコア・システムおよびWorkstationコンポーネントで使用されるようなものが含まれます。
tmipcrm
はローカル・サーバー・マシン上でのみ機能するので、Oracle Tuxedo構成内のリモート・マシン上にあるIPCリソースはクリーンアップされません。TUXCONFIG
ファイルの名前は、TUXCONFIG
環境変数の値として指定するか、またはコマンドラインで指定する必要があります。TUXCONFIG
ファイルは必須で、読取り可能である必要があります。
このコマンドを正常に実行できるのは、適切な権限を持つユーザーまたは管理者だけです。このコマンドは、掲示板(BB)を格納する共有メモリー・セグメントにアタッチ可能であることを前提としており、掲示板に格納されて参照されるIPCリソースを削除しようとします。システム上のその他の条件によって削除が失敗することもあります。このような失敗が検出された場合には通知されます。
-y
-n
TUXCONFIG_file
TUXCONFIG
ファイルが見つからない場合は、致命的なエラーが発生し、次のメッセージが表示されます。
Cannot open tuxconfig file
TUXCONFIG
ファイルが読み取れない場合は、致命的なエラーが発生し、次のメッセージが表示されます。
Execute permission denied, not application administrator
掲示板の共有メモリーへのアタッチが失敗した場合は、致命的なエラーが発生し、次のメッセージが表示されます。
Cannot attach to BB!
このコマンドは、通常は対話型モードで実行して、必要に応じて質問に対する回答を求めるプロンプトを表示します。-y
オプションを指定すると、tmipcrm
は応答を求めるプロンプトを表示しませんが、すべての質問に対して「はい」と答えたとみなされます。-n
オプションを指定すると、tpipcrm
はstdout
にIPCリソースを表示するだけで終了し、IPCリソースは削除されません。
次の例では、このコマンドが通常どのように使用されるかについて説明します。
$ tmipcrm /home/user/apps/tuxconfig
Looking for IPC resources in TUXCONFIG file /home/user/apps/tuxconfig
The following IPC resources were found:
Message Queues:
0x2345
0x3456
…
Semaphores:
0x34567
0x45678
…
Shared Memory:
0x45678
0x56789
…
Remove these IPC resources (y/n)?: y
Removing IPC resources … done!
次のサンプル・コードでは、ローカル・マシン上のOracle Tuxedo ATMIアプリケーションで使用されるIPCリソースの一覧を、ipclist
というファイルに出力します。
tmipcrm -n /home/user/apps/tuxconfig >ipclist
tmloadcf
- UBBCONFIG
ファイルを解析し、バイナリ版のTUXCONFIG
構成ファイルをロード
tmloadcf
[-n
] [-y
] [-c
] [-b
blocks
] {UBBCONFIG_file
|
-}
tmloadcf
は、UBBCONFIG
構文に指定されたファイルまたは標準入力を読み取り、構文をチェックして、オプションでバイナリのTUXCONFIG
構成ファイルをロードします。環境変数TUXCONFIG
とTUXOFFSET
(オプション)は、TUXCONFIG
ファイルと該当情報が格納される場所のオフセット(オプション)を示します。tmloadcf
は、UBBCONFIG
ファイルのRESOURCES
セクションに定義されているMASTER
マシン上でしか実行できません。ただし、-c
あるいは-n
オプションが指定されている場合を除きます。
注意: | TUXCONFIG 環境変数に指定されたパス名は、UBBCONFIG ファイルのMACHINES セクションに指定されているTUXCONFIG パラメータの値と完全に一致しなければなりません(大文字/小文字の区別も含む)。一致しない場合、tmloadcf(1) は正常に実行されません。 |
tmloadcf
は、UBBCONFIG
ファイルのセクションで抜けているものを検出すると、警告メッセージを表示します。ただし、LAN
OPTION
の指定のない構成におけるNETWORK
セクションの抜け(UBBCONFIG(5)に関する項を参照)、またはROUTING
セクションの抜けは除きます。入力ファイルを解析中に構文エラーを検出すると、tmloadcf
はTUXCONFIG
ファイルを更新せずに終了します。
tmloadcf
を実行するユーザーの実効ユーザー識別子は、UBBCONFIG
ファイルのRESOURCES
セクションに記述されているUID
と同じでなければなりません(指定がある場合)。
tmloadcf
にオプション-c
を付けると、プログラムはこの構成に必要とされる最小のIPCリソースを表示します。RDMAが有効な場合、このオプションを指定すると、プログラムでMsgq_daemon
(RCDMSZ)のメモリーの推奨サイズが出力されます。SHMQが有効な場合、このオプションを指定すると、プログラムでSHMQMAXMEM
(SHMQSZ)の推奨最小値が出力されます。ノードごとに異なるリソース要件が、構成に含まれるノードごとに表示されます。TUXCONFIG
ファイルは更新されません。
tmloadcf
で-n
オプションを使用すると、プログラムはUBBCONFIG
(構成ファイルのテキスト・バージョン)の構文チェックだけを行い、TUXCONFIG
ファイルの実際の更新は行いません。
構文チェックの後、tmloadcf
は、TUXCONFIG
が参照するファイルが存在するかどうか、存在する場合はそのファイルが有効なOracle Tuxedoシステムのファイル・システムかどうか、およびTUXCONFIG
表を含んでいるかどうかを調べます。これらの条件が満たされていない場合、tmloadcf
は、TUXCONFIG
の作成および初期化を行うかどうかを確認するプロンプトを表示します。
Initialize TUXCONFIG file: path [y, q]?
標準入力あるいは標準出力が端末でない場合、あるいはコマンドラインで-y
オプションが指定された場合には、このプロンプトは出されません。"y
"または"Y
"以外のレスポンスをすると、tmloadcf
は構成ファイルを作成せずに終了します。
TUXCONFIG
ファイルが正しく初期化されていないとき、ユーザーが承認した場合は、tmloadcf
がOracle Tuxedoファイル・システムを作成し、TUXCONFIG
表を作成します。-b
オプションがコマンドラインに指定されると、Oracle Tuxedoファイル・システムの作成時に、その引数がデバイスのブロック数として使用されます。-b
オプションの値が新しいTUXCONFIG
表を収容できるほど大きい場合、tmloadcf
は、指定された値を使用して新しいファイル・システムを作成します。それ以外の場合、tmloadcf
はエラー・メッセージを出力して終了します。-b
オプションが指定されない場合、tmloadcf
は、TUXCONFIG
を収容できるだけ大きい新しいファイル・システムを作成します。ファイル・システムがすでに存在している場合、-b
オプションは無視されます。
TUXCONFIG
がrawデバイス(初期化されていない)であり、そのrawデバイス上のブロック数を設定する必要がある場合には、-b
オプションをできるだけ使用するようにしてください。TUXCONFIG
が通常のUNIXファイルである場合には、-b
オプションは使用しないようにしてください。
TUXCONFIG
ファイルがすでに初期化されていると判断される場合、tmloadcf
はそのTUXCONFIG
ファイルに記述されているシステムが稼働状態にないことを確認します。そのシステムが稼働状態にあると、tmloadcf
はエラー・メッセージを出して終了します。
システムが非稼働状態にあり、TUXCONFIG
ファイルがすでに存在している場合は、ファイルを上書きするかどうかを確認するプロンプトが表示されます。
Really ove
rwrite TUXCONFIG file [y, q]?
標準入力あるいは標準出力が端末でない場合、あるいはコマンドラインで-y
オプションが指定された場合には、このプロンプトは出されません。"y
"または"Y
"以外のレスポンスを行うと、tmloadcf
は終了して、ファイルの書換えは行われません。
構成ファイルのRESOURCES
セクションにSECURITY
パラメータが指定されていると、tmloadcf
は標準入力をフラッシュし、端末エコー機能をオフにして、ユーザーにアプリケーション・パスワードの入力を求めます。
Enter Application Password?
Reenter Application Password?
パスワードは、30文字以内の長さで入力できます。ファイルではなく標準入力を介してUBBCONFIG
(構成ファイルのテキスト・バージョン)をロードするオプションは、SECURITY
パラメータがオンのときには使用できません。標準入力が端末でない場合、つまり、ユーザーにパスワードの入力を求めることができない場合(たとえば、here
ファイルの場合)、アプリケーション・パスワードの設定のために環境変数APP_PW
が参照されます。APP_PW
環境変数が設定されておらず、標準入力が端末でない場合には、tmloadcf
はエラー・メッセージを出し、ログ・メッセージを生成して、TUXCONFIG
ファイルのロードに失敗します。
エラーがないと仮定して、すべてのチェックの結果が正常であった場合、tmloadcf
はUBBCONFIG
ファイルをTUXCONFIG
ファイルにロードします。このとき、TUXCONFIG
表にある既存の情報はすべて書き換えられます。
ロード中に丸められて、アンロードされたときに一致しない値もありますので、注意してください。そのような値にはMAXRFT
およびMAXRTDATA
がありますが、それだけではありません。
tmloadcf
はマスター・ノード上で実行しなければなりません。相互運用アプリケーションでは、マスター・ノードは最新のリリースでなければなりません。
tmloadcf
は、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
環境変数APP_PW
は、SECURITY
パラメータが指定され、かつ標準入力として端末以外のものを使用してtmloadcf
を実行するアプリケーションに対して設定しなければなりません。
UBBCONFIG
ファイルBB.shm
から構成ファイルをロードするには、次のようにデバイスを2000ブロックに初期化します。
tmloadcf -b2000 -y BB.shm
入力にエラーが検出されると、エラーの原因となった行が、問題を指摘するメッセージとともに、標準エラーに出力されます。また、UBBCONFIG
ファイルに構文エラーがあったり、システムがその時点で稼働中であると、TUXCONFIG
ファイル内の情報は一切更新されず、tmloadcf
は終了して、終了コード1を戻します。
UBBCONFIG
ファイルに指定されているUID
と一致しない実効ユーザー識別子を持つユーザーがtmloadcf
を実行すると、次のようなエラー・メッセージが表示されます。
*** UID is not effective user ID ***
tmloadcf
を非マスター・ノード上で実行すると、次のようなエラー・メッセージが表示されます。
tmloadcf cannot run on a non-master node.
tmloadcf
をアクティブ・ノード上で実行すると、次のようなエラー・メッセージが表示されます。
tmloadcf cannot run on an active node.
tmloadcf
は正常に処理を完了すると、終了コード0を返して終了します。TUXCONFIG
ファイルが更新された場合には、userlog
メッセージが生成されてこのイベントが記録されます。
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmloadrepos
- バイナリのTuxedoサービス・メタデータ・リポジトリ・ファイルを作成または更新し、サービス・パラメータ情報とともにロードします。
tmloadrepos
[-e|-d service1[,...]
] [-y
] [-i repository_input
file] repository_file
このコマンドを使用すると、バイナリのTuxedoサービス・メタデータ・リポジトリ・ファイルを作成または更新し、サービス・パラメータ情報とともにロードできます。
リポジトリ・ファイルが存在せず、入力ファイルが指定されていない場合は、リポジトリ・ファイルが作成され、コンソールから入力(標準入力)するサービス・パラメータ情報が使用されます。標準入力は、リポジトリ・ファイルがすでに存在しているにもかかわらず、入力ファイルまたは特定のサービス名が指定されていない場合にも使用します。
注意: | tmloadrepos を使用して、JOLTリポジトリ・ファイルのサービス・パラメータ情報を更新、追加、または削除することはできません。 |
-i
-i
オプションにより、repository_input
ファイルに示されていない既存のrepository_file
情報をtmloadreposが保持できます。または、repository_input
ファイルに構文エラーがある場合にも同じ情報を保持できます。 例1: tmloadrepos -i infile reposfile
指定された入力ファイルが見つからない場合、エラー・メッセージが表示されます。
-e
repository_input
ファイルを指定しないと、コンソールからサービス・パラメータ情報を入力するようにユーザーが要求され、その入力した情報によって既存のリポジトリ情報が置き換えられます。例2: tmloadrepos -e reposfile
例3: tmloadrepos -e -i infile reposfile
-d
-d
を指定すると、指定したサービスの情報がリポジトリから削除されます。-d
オプションを-i
オプションと一緒に使用することはできません。また、特定のサービス情報を削除するために正規表現を使用することもできません。
注意: | 情報が誤って消去されるのを防ぐために、-y オプションを指定しないかぎり、-e および-d オプションによってユーザーの確認を要求します。 |
注意: | 確認メッセージが表示された場合、メタデータ・リポジトリ・ファイルのサービス情報の編集、追加または削除を続行するには「Y」を、続行しない場合は「N」を選択します。 |
-y
repository_input
ファイル
repository_input
ファイルは、サービス・キーワードおよびパラメータ・キーワードとそれらの値を格納するテキスト・ベースのファイルです。キーワードの省略形も使用できます。キーワードおよび省略形の大文字/小文字は区別されます。キーワード、省略形、および値の一覧については、『Oracle Tuxedo Oracle Tuxedoアプリケーションの設定』の「Tuxedoサービス・メタデータ・リポジトリの管理」<Default ?Font>のTuxedoサービス・メタデータ・リポジトリの作成に関する項を参照してください。
repository_file
入力にエラーが検出されると、エラーの原因となった行が、問題を指摘するメッセージとともに、標準エラーに出力されます。
service=TRANSFER
svcdescription=This service transfers money from one account to another
export=Y
inbuf=FML
outbuf=FML
param=ACCOUNT_ID
type=integer
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
access=in
count=2
requiredcount=2
param=SAMOUNT
paramdescription=This is the amount to transfer. It must be greater than zero.
type=string
access=in
param=SBALANCE
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
type=string
access=out
count=2
requiredcount=2
param=STATLIN
type=string
access=out
service=LOGIN
svcdescription=This service allows users to log in to the Acme Banking\ Corporation computer systems. Only tellers and trusted administrators may\
make use of this service.
inbuf=VIEW
inview=LOGINS
outview=LOGINR
export=Y
param=user
type=string
access=in
param=passwd
type=string
access=in
param=token
type=integer
access=out
例2 :埋め込み型パラメータのtmloadrepos入力ファイルの例
service=DEPOSIT
svcdescription=This service saves money to one account
export=Y
inbuf=FML32
outbuf=FML32
param=USER_INFO
type=fml32
paramdescription=user information of the account
access=in
count=1
requiredcount=1
fldnum=20000
# embedded field
(
param=USERNAME
type=string
paramdescription=user name
size=8
count=1
requiredcount=1
fldnum=20001
param=GENDER
type=string
size=6
count=1
requiredcount=1
fldnum=20002
)
param=ACCOUNT_ID
type=integer
paramdescription=the deposit account.
access=in
count=1
requiredcount=1
fldnum=20003
param=SAMOUNT
paramdescription=This is the amount to transfer. It must be greater than zero.
type=string
access=in
fldnum=20004
param=SBALANCE
paramdescription=the deposit account
type=string
access=out
count=1
requiredcount=1
fldnum=20005
param=STATLIN
type=string
access=out
fldnum=20006
tpgetrepos(3c)、tpsetrepos(3c)、tmunloadrepos(1)
、TMMETADATA(5)、『Oracle Tuxedo Oracle Tuxedoアプリケーションの設定』のTuxedoサービス・メタデータ・リポジトリの管理に関する項<Default ?Font>
TMS_rac_refresh
- Oracle Real Application Clusters (RAC)の準備されたトランザクションのリストを取得
TMS_rac_refresh groupname
または[group ID grp1,grp2, ...]
TMS_rac_refresh
は、トランザクション・マネージャ・サーバー(TMS)にコマンドを送り、xa_recover()
の処理を再実行します。サーバーはグループ名またはグループIDで指定し、groupname
パラメータにリストされます。TMS_rac_refresh
は、メッセージをTMSに送信した後で終了します。その後、TMSは実際のxa_recover()
を非同期に実行します。この処理は、フェイルオーバー条件が発生したときにOracle Real Application Clusters (RAC)ソフトウェアで必要になります。
TMS_rac_refresh
は、Oracle RACグループが代替サーバー・グループにフェイルオーバーするときに、Oracle Fast Application Notification (FAN)を使用して開始されます。コマンドラインから手作業で実行する必要はありません。
注意: | TMS_rac_refresh は、RAC機能を使用するOracleサーバー・グループのみが使用します。 |
注意: | Oracle FANの構成方法の詳細は、Oracle 10gのドキュメントを参照してください。 |
groupname
TMS_rac_refresh
を実行するために必須のパラメータです。
TMS_rac_refresh
は、通常はコマンドラインからは実行しません。したがって、診断メッセージはuserlog
に書き込まれます。
TMS_rac_refresh
では、groupname
が正しいサーバー・グループの名前でなかったとき、またはgroupname
でリストされたTMSサーバーにメッセージを送信できなかった場合にエラーを通知します。
tmshutdown
- Oracle Tuxedoサーバー・セットを停止
tmshutdown
[options
]
tmshutdown
は、サーバーの実行を停止させたり、構成ファイルに記述されているサービスの宣言を除去したりします。tmshutdown
コマンドを呼び出せるのは、掲示板の管理者(構成ファイルのUID
パラメータで指定されている)またはroot
だけです。また、tmshutdown
は、構成ファイルのRESOURCES
セクションでMASTER
として指定されているマシン、あるいはMASTER
として機能するバックアップ・マシン(つまり、tmadmin(1)
のmaster
コマンドによりDBBL
がすでに稼働状態である)上でしか呼び出せません。ただし、パーティション化されたプロセッサに対して-P
オプションが使用されている場合を除きます(下記参照)。
オプションなしの場合、tmshutdown
はすべての管理サーバー、TMS
、ゲートウェイ・サーバー、およびTUXCONFIG
環境変数に指定されている構成ファイルのSERVERS
セクションに記述されているサーバーを停止させ、それらの関連IPCリソースを除去します。グループごとに、SERVERS
セクションの全サーバー、関連するゲートウェイ・サーバー(外部グループの)およびTMS
サーバーがこの順序で停止されます。管理サーバーは最後に停止されます。
SEQUENCE
パラメータなしのアプリケーション・サーバーが、構成ファイルのサーバー・エントリと逆の順序で最初に停止されます。その後、SEQUENCE
パラメータが指定されたサーバーがシーケンス番号の上から順に停止されます。構成ファイルのSERVERS
セクションの複数のサーバーでSEQUENCE
パラメータが同じ場合、tmshutdown
はそれらのサーバーをパラレルで停止します。SERVERS
セクションの各エントリには、MIN
パラメータとMAX
パラメータをオプションで指定できます。-i
オプションが指定されない場合、tmshutdown
は、各サーバー・エントリについてサーバーのすべてのオカレンス(最大でMAX
オカレンス)を停止します。-i
オプションを使用すると、個々のオカレンスが停止されます。
あるサーバーを停止できない場合、あるいはサービスの公開を削除できない場合、中央のイベント・ログに診断が書き出されます(「userlog(3c)」を参照)。次に、すべてのオプションについて個々に説明します。
-l
lmid
LMID
パラメータがlmid
である各グループごとに、該当グループに対応するSERVERS
セクションの全サーバーがまず停止され、続いてそのグループに属するTMS
とゲートウェイ・サーバーが停止されます。
-g
grpname
SERVERS
セクションのすべてのサーバー(つまり、SRVGRP
パラメータがgrpname
に設定されている)が停止され、続いてそのグループのすべてTMS
とゲートウェイ・サーバーが停止されます。TMSサーバーの停止は、そのグループ・エントリのTMSNAME
およびTMSCOUNT
パラメータの設定に基づいて行われます。外部グループの場合、HOST
セクションの関連エントリに対応するゲートウェイ・サーバーの停止は、パラメータGATENAME
とGATECOUNT
に基づいて行われます。ゲートウェイを停止すると、そのプロセスが停止されると共に、その管理サービスと公開されたすべての外部サービスの公開が取り消されます。
-i
srvid
SERVERS
セクションのサーバーのうち、SRVID
パラメータがsrvid
に設定されているサーバーがすべて停止されます。SRVID
には30,000を超える値を入力しないでください。これはシステム・プロセス(TMS
またはゲートウェイ・サーバー)を指定します。これらを停止するには、-l
オプションまたは-g
オプションを使用する必要があります。
-s
aout
-o
sequence
-S
-A
-M
MASTER
マシン上のBBL
が停止され、構成ファイルにLAN
とNETWORK
エントリが指定されていれば、BRIDGE
が停止されます。MODEL
がMP
であると、DBBL
管理サーバーが停止されます。
-B
lmid
-w
delay
SIGKILL
シグナルは捕捉できないため、その時点でプロセスによって実行されるコードには無関係に、シグナルを受信したプロセスはすべて直ちに終了されます。停止されるプロセスが掲示板を更新中だった場合には、掲示板に構造上の損傷を与えるおそれがあります。注意: | -w オプションが適用されるサーバーは、UNIXのシグナルSIGTERM を捕捉できません。 |
注意: | SIGKILL シグナルの受信に基づいてサーバーが停止される場合、エントリが掲示板に残る場合があります。BBLが停止される場合、これらのエントリが検出され、BBLは停止しません。システムの停止を完了するには、再度tmshutdown コマンドを使用しなければならない場合もあります。 |
-k
{TERM
| KILL
}
SIGKILL
シグナルは捕捉できないため、その時点でプロセスによって実行されるコードには無関係に、シグナルを受信したプロセスはすべて直ちに終了されます。このような挙動は、停止中のプロセスが掲示板を更新中だった場合、掲示板に構造上の損傷を与えるおそれがあります。 これを防ぐためにtpkill(1)コマンドを使用できます。 tpkillは掲示板をロックした後でSIGKILL
シグナルをプロセスに送信するため、終了されるプロセスによる掲示板の更新を回避できます。 注意: | このオプションは、UNIXシグナルのSIGTERM とSIGKILL をサポートするシステムでは、これらにマップされます。デフォルトでは、SIGTERM はOracle Tuxedoサーバーで順序立てた停止を開始します。SIGTERM をアプリケーションでリセットすると、Oracle Tuxedoシステムがサーバーを停止できなくなることがあります。 |
注意: | SIGKILL シグナルの受信に基づいてサーバーが停止される場合、エントリが掲示板に残る場合があります。BBLが停止される場合、これらのエントリが検出され、BBLは停止しません。システムの停止を完了するには、再度tmshutdown コマンドを使用しなければならない場合もあります。 |
-y
yes
の答えを指定します。(このプロンプトが表示されるのは、制限するオプションを指定せずにコマンドを入力した場合のみです。)
-q
-n
-R
-R
オプションは、-l
あるいは-g
オプションと一緒に使用しなければなりません(例: tmshutdown -l
lmid
-R
)。また、構成ファイルのRESOURCES
セクションにMIGRATE
オプションを指定しなければなりません。
-c
-H
lmid
lmid
に対応するノード上の全管理サーバーおよびアプリケーション・サーバーが停止されます。一方、マルチプロセッサ(たとえば3B4000)上では、PEが1つしか指定されていない場合でも、すべてのPEが停止されます。
-P
lmid
tmshutdown
は指定lmid
上の掲示板にアタッチし、このlmid
が該当アプリケーションの他の部分からパーティション化されていることを確認してから(つまり、DBBL
にはアクセスしません)、すべての管理サーバーとアプリケーション・サーバーを停止します。このコマンドは、構成ファイルのMACHINES
セクションに指定されているlmid
に対応するプロセッサ上で実行しなければなりません。
-l
、-g
、-s
および-T
オプションを指定するとTMS
サーバーが停止します。-l
、-g
および-s
オプションを指定すると、ゲートウェイ・サーバーが停止します。-l
、-g
、-i
、-s
、-o
および-S
オプションはアプリケーション・サーバーに適用されます。-A
、-M
および-B
オプションは管理プロセスのみに適用されます。-l
、-g
、-i
、-o
および-s
オプションを組み合せて使用すると、指定されたすべての条件を満たすサーバーのみが停止します。
サーバーの中断時にグローバル・トランザクションが稼働しているといったような分散トランザクション処理機能を使用する場合には、プリコミット後のコミットが記録される場所まで処理が進んでいなかったトランザクションは、中断します。一方、コミット点まで進んでいたトランザクションは、サーバー(たとえば、TMS
)が再度ブートされた時点で処理が完了します。
tmshutdown
はマスター・ノード上で実行する必要があります。相互運用アプリケーションでは、マスター・ノードは最新のリリースを実行する必要があります。tmshutdown
は、リリース4.1サイトでリリース4.2管理サーバーを停止させることにつながる構成ファイル内の条件を検出し報告します。
tmshutdown
は、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tmshutdown
は、サーバーの停止に失敗した場合や致命的エラーが発生した場合には、終了コード1を返して終了します。詳細は、ユーザー・ログを調べてください。正常に実行できた場合には、終了コード0で終了します。
tmshutdown
が、実際のマスター・ノードでないアクティブ・ノード上で実行されると、次のような致命的エラー・メッセージが表示されます。
tmshutdown cannot run on a non acting-master node in an active application.
プロセスを停止することでアクティブ・プロセスがDBBL
からパーティション化されると、次のような致命的エラー・メッセージが表示されます。
cannot shutdown, causes partitioning.
サーバーが異常終了した場合には、次のようなメッセージが出されます。
CMDTUX_CAT:947 Cannot shutdown server GRPID
システム全体を停止して、Oracle TuxedoのIPCリソースをすべて削除するには、次のコマンドを実行します。30秒経過しても確認が得られないと強制的に実行されます。
lmid
の値がCS1
に設定されているマシン上のサーバーだけを停止するには、次のコマンドを入力します。
tmshutdown -l CS1
-l
オプションはSERVERS
セクションにリストされているサーバーのみにアクションを制限するものであるため、CS1
上のBBL
は停止されません。
tmshutdown
コマンドは、ハングアップ・シグナル(SIGHUP
)を無視します。停止中にシグナルが検出されても、プロセスは継続します。
tmadmin(1)
、tmboot(1)
、tpkill(1)、UBBCONFIG(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmunloadcf
- バイナリ版のTUXCONFIG
構成ファイルをアンロード
tmunloadcf
tmunloadcf
は、TUXCONFIG
構成ファイルをバイナリ表現からテキスト形式に変換します。この変換処理は、バイト・オーダーが異なるマシン間でファイルを簡潔に移送したり、ファイルのバックアップ・コピーを簡潔に作成して信頼性を高める場合に役立ちます。テキスト形式については、「UBBCONFIG(5)」で説明します。
tmunloadcf
は、TUXCONFIG
およびTUXOFFSET
環境変数が示すTUXCONFIG
ファイルから値を読み取り、それらを標準出力に書き出します。
Oracle Tuxedoリリース7.1で起動すると、複数のリソースに対してパスワードを使用できます。たとえば、リソース・マネージャのOPENINFO
文字列にパスワードを指定できます。パスワードを含むTUXCONFIG
構成ファイルに対してtmunloadcf
が実行された場合、出力には暗号化されたパスワードが表示されます。この暗号化されたパスワードは、一度だけシステムにアップロードできます。
構成中に四捨五入され、tmloadcf
の呼び出しまたはTMIBインタフェースによって設定した値と一致しない値もありますので、注意してください。そのような値にはMAXRFT
およびMAXRTDATA
がありますが、それだけではありません。
tmunloadcf
は、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
次のコマンドを入力すると、/usr/tuxedo/tuxconfig
の構成がファイルtconfig.backup
にアンロードされます。
TUXCONFIG=/usr/tuxedo/tuxconfig tmunloadcf > tconfig.backup
tmunloadcf
は、TUXCONFIG
およびTUXOFFSET
環境変数が参照するファイルが存在するかどうか、存在する場合はそのファイルが有効なOracle Tuxedoシステムのファイル・システムであるかどうか、およびTUXCONFIG
表を含んでいるかどうかを調べます。これらの条件のいずれかが満たされない場合、tmunloadcf
はエラー・メッセージを出し、終了コード1を戻して終了します。処理が成功すると、tmunloadcf
は終了コード0を返して終了します。
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tmunloadrepos - Tuxedoサービス・メタデータ・リポジトリ・ファイルから、サービスの情報を表示するか、tuxedoクライアント側またはサーバー側のC疑似コードを作成します。
tmunloadrepos [-s service_regular_expression1[,...]] [-t|-c|-C|-S|-V output_dir][-o output_file] repository_file
tmunloadreposは、メタデータ・リポジトリ・ファイルに指定されたTuxedoサービス情報を表示します。または、Tuxedoクライアント側またはサーバー側のC疑似コードをメタデータ・リポジトリ・ファイルから生成します。
注意: | tmunloadreposは、Joltリポジトリ・ファイルの表示にも使用できます。 |
tmunloadreposでは以下のオプションを使用できます。
-s
service_regular_expression
に一致するサービスに限定できます。このオプションを指定しない場合は、リポジトリで認識されているすべてのサービスの情報が表示されます。区切り文字「,」を使用すると、複数のservice_regular_expression
を1つの文字列にできます。
-t
-c
-C
-C
オプションを指定すると、出力が、典型的なスタンドアロンtuxedoクライアントのC疑似コード形式になります。tuxedoクライアントに含まれるサービス名全体の文字数は512以内であることが必要です。
-S
-V output_dir
-V
オプションを指定すると、tmunloadrepos
がTuxedoビュー・ファイル${SERVICENAME}[info.v|info32.v|_infoFML|infoFML32]
を生成します。このファイルには、メタデータ・リポジトリ・ファイルに定義されている、FML/FML32フィールド表またはVIEW/VIEW32記述子が記述されています。tmunloadrepos
の入力によって、VIEWのフィールドの最大オカレンス数が指定されない場合、tmunloadrepos
-V
は、VIEWlのそのフィールドの1オカレンスのみを生成します。反対に、tmunloadrepos
の入力によってフィールドの無制限のオカレンスが指定されると、tmunloadrepos
-V
はエラーを生成します。
– S、-V、-C、-t
、-c
の各オプションは相互に排他的です。これらのオプションのいずれも指定しない場合、出力はプレーン・テキスト形式になります。
-o output_file
出力ファイル名を指定します。-o output_file
が指定されない場合、標準出力が使用されます。-o output_file
が有効になるのは、-S
、-C
、または-c
が指定される場合のみです。
注意: | tmunloadreposは、Tuxedoサービス・メタデータ・リポジトリ・ファイルだけでなく、Joltリポジトリ・ファイルの表示にも使用できます。 |
以下のtmunloadreposコマンドライン・オプションはTuxedo 10.0リリースでは非推奨になりました。
-w
-w
オプションを指定すると、出力がWSDLサービス記述形式になります。Tuxedo 9.0以降では、WSDL仕様V2.0 (www.x3.org)をベースにカスタマイズしたWSDL形式を使用しています。
Oracle SALTのコマンド・ユーティリティtmwsdlgenは、TuxedoサービスのWSDL公開に関して唯一推奨されるユーティリティです。tmwsdlgenの詳細は、Oracle SALTのドキュメントを参照してください。
tmunloadreposでは、repository_fileで指定されたファイルがTuxedoシステムのメタデータ・リポジトリ・ファイルとして有効かどうかが検証されます。-sオプションが指定されている場合は、service_regular_expressionに一致する1つまたは複数のサービスについての情報がリポジトリに格納されているかどうかが検証されます。これらの条件のいずれかが満たされない場合、tmunloadreposはエラー・メッセージを出し、終了コード1を戻して終了します。処理が成功すると、tmunloadreposは終了コード0を返して終了します。
#
# #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
#
######################
# service : TRANSFER #
######################
service=TRANSFER
servicetype=service
export=Y
inbuf=FML32
outbuf=FML32
svcdescription=This service transfers money from one account to another
tuxservice=TRANSFER
param=ACCOUNT_ID
count=2
requiredcount=2
type=integer
access=in
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
param=SAMOUNT
count=1
requiredcount=1
type=string
access=in
paramdescription=This is the amount to transfer. It must be greater than zero.
param=SBALANCE
count=2
requiredcount=2
type=string
access=out
paramdescription=The withdrawal account is 1st, and the deposit account is 2nd.
param=STATLIN
count=1
requiredcount=1
type=string
access=out
###################
# service : LOGIN #
###################
service=LOGIN
servicetype=service
export=Y
inbuf=VIEW
outbuf=VIEW
inview=LOGINS
outview=LOGINR
svcdescription=This service allows users to log in to the Acme Banking \
Corporation computer systems. Only tellers and trusted \
administrators may make use of this service.
tuxservice=LOGIN
param=user
count=1
requiredcount=1
type=string
access=in
param=passwd
count=1
requiredcount=1
type=string
access=in
param=token
count=1
requiredcount=1
type=integer
access=out
/*
* #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
* #Generated Time : 04/12/12 01:50:08
*/
#include <stdio.h>
#include "userlog.h"
#include "atmi.h"
/**********************/
/* service : TRANSFER */
/**********************/
int
callsvc_TRANSFER()
{
/*
* This service transfers money from one account to
* another
*/
FBFR32 *idata;
FBFR32 *odata;
int in_account_id = 0;
/*char in_samount [<USER_DATA_LENGTH>];*/
char *out_sbalance = NULL;
char *out_statlin = NULL;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("FML32", NULL, 4096))==NULL) {
/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("FML32", NULL, 4096))==NULL) {
tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, SAMOUNT, (char *)&in_samount, <USER_DATA_LENGTH>);*/
rtn = tpcall("TRANSFER", idata, ilen, &odata, &olen, flags)
/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
/*******************/
/* service : LOGIN */
/*******************/
int
callsvc_LOGIN()
{
/*
* This service allows users to log in to the Acme Banking
* Corporation computer systems. Only tellers and trusted
* administrators may make use of this service.
*/
struct LOGINS *idata;
struct LOGINR *odata;
/*char in_user [<USER_DATA_LENGTH>];*/
/*char in_passwd [<USER_DATA_LENGTH>];*/
int out_token = 0;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("VIEW", "LOGINS", 4096))==NULL) {
/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("VIEW", "LOGINR", 4096))==NULL) {
tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/* <idata> View member value setting can be placed here */
idata->user = in_user;
idata->passwd = in_passwd;
rtn = tpcall("LOGIN", idata, ilen, &odata, &olen, flags)
/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
int
main(int argc, char *argv[])
{
argc = argc;
argv = argv;
/*
* Set the external variable proc_name (defined in userlog.h)
* to be the name of the executable program so that it appears
* in the Tuxedo ULOG entries for the client program.
*/
proc_name = argv[0];
if (tpinit((TPINIT *)NULL) == -1) {
/*<error log can be placed here>*/
(void)exit(1);
}
if (callsvc_TRANSFER()){
/*<error log can be placed here>*/
}
if (callsvc_LOGIN()){
/*<error log can be placed here>*/
}
(void)tpterm()
return(0);
}
/ *
* #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
* #Generated Time : 04/12/12 01:50:08
*/
/**********************/
/* service : TRANSFER */
/**********************/
int
callsvc_TRANSFER()
{
/*
* This service transfers money from one account to
* another
*/
FBFR32 *idata;
FBF R32 *odata;
int in_account_id = 0;
/*char in_samount [<USER_DATA_LENGTH>];*/
char *out_sbalance = NULL;
char *out_statlin = NULL;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("FML32", NULL, 4096))==NULL) {
/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("FML32", NULL, 4096))==NULL) {
tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, ACCOUNT_ID, (char *)&in_account_id, <USER_DATA_LENGTH>);*/
/*Fadd32(idata, SAMOUNT, (char *)&in_samount, <USER_DATA_LENGTH>);*/
rtn = tpcall("TRANSFER", idata, ilen, &odata, &olen, flags)
/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
/*******************/
/* service : LOGIN */
/*******************/
int
callsvc_LOGIN()
{
/*
* This service allows users to log in to the Acme Banking
* Corporation computer systems. Only tellers and trusted
* administrators may make use of this service.
*/
struct LOGINS *idata;
struct LOGINR *odata;
/*char in_user [<USER_DATA_LENGTH>];*/
/*char in_passwd [<USER_DATA_LENGTH>];*/
int out_token = 0;
long ilen,olen,flags = 0;
/* Application business logic can be placed here */
if ((idata = tpalloc("VIEW", "LOGINS", 4096))==NULL) {
/*<error log can be placed here>*/
return -1;
}
if ((odata = tpalloc("VIEW", "LOGINR", 4096))==NULL) {
tpfree(idata);
/*<error log can be placed here>*/
return -1;
}
/* <idata> View member value setting can be placed here */
idata->user = in_user;
idata->passwd = in_passwd;
rtn = tpcall("LOGIN", idata, ilen, &odata, &olen, flags)
/* Code to retrieve fields from odata goes here */
tpfree(idata);
tpfree(odata);
/* Application business logic can be placed here */
return 0;
}
/*
* #Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
* #Generated Time : 04/12/12 01:50:24
*/
/**********************/
/* service : TRANSFER */
/**********************/
void
TRANSFER(TPSVCINFO *msg)
{
/*
* This service transfers money from one account to
* another
*/
FBFR32 *idata;
FBFR32 *odata;
int in_account_id = 0;
char *in_samount = NULL;
char *out_sbalance = NULL;
char *out_statlin = NULL;
int counter, numofocc;
/* Application business logic can be placed here */
idata = (FBFR32 *) msg->data;
Fprint32(idata);
if ((odata = tpalloc("FML32", NULL, msg->len))==NULL) {
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)idata, 0L, 0);
}
if ((numofocc = Foccur32(idata, ACCOUNT_ID)) == -1) {
/*verifying the number of occurrences is within the range specified in the service definition*/
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
if (numofocc == 0) {
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
for (counter = 0; counter < numofocc; counter++) {
/*
* if (Fget32(idata, ACCOUNT_ID, counter, (char *)&in_account_id, <USER_DATA_LENGTH>) == -1) {
* <error log can be placed here>
* tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
* }
*/
}
if ((numofocc = Foccur32(idata, SAMOUNT)) == -1) {
/*verifying the number of occurrences is within the range specified in the service definition*/
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
if (numofocc == 0) {
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
}
for (counter = 0; counter < numofocc; counter++) {
/*
* if (Fget32(idata, SAMOUNT, counter, (char *)&in_samount, <USER_DATA_LENGTH>) == -1) {
* <error log can be placed here>
* tpreturn(TPFAIL, 0, (char *)odata, 0L, 0);
* }
*/
}
/* Application business logic can be placed here */
/*Fadd32(odata, SBALANCE, (char *)&out_sbalance, <USER_DATA_LENGTH>);*/
/*Fadd32(odata, SBALANCE, (char *)&out_sbalance, <USER_DATA_LENGTH>);*/
/*Fadd32(odata, STATLIN, (char *)&out_statlin, <USER_DATA_LENGTH>);*/
tpreturn(TPSUCCESS, 0, (char *)odata, 0L, 0);
}
/*******************/
/* service : LOGIN */
/*******************/
void
LOGIN(TPSVCINFO *msg)
{
/*
* This service allows users to log in to the Acme Banking
* Corporation computer systems. Only tellers and trusted
* administrators may make use of this service.
*/
struct LOGINS *idata;
struct LOGINR *odata;
char *in_user = NULL;
char *in_passwd = NULL;
int out_token = 0;
/* Application business logic can be placed here */
idata = (struct LOGINS *) msg->data;
if ((odata = tpalloc("VIEW", "LOGINR", msg->len))==NULL) {
/*<error log can be placed here>*/
tpreturn(TPFAIL, 0, (char *)idata, 0L, 0);
}
/* Input View <idata> member value getting can be placed here */
in_user = idata->user;
in_passwd = idata->passwd;
/* Output View member value setting can be placed here */
odata->token = out_token;
tpreturn(TPSUCCESS, 0, (char *)odata, 0L, 0);
}
filename:LOGINinfo.v
#Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
#Generated Time : 04/12/12 01:50:34
VIEW LOGINS
#type cname fbname count flag size null
#---- ----- ------ ----- ---- ---- ----
string in_user - 1 - - NULL
string in_passwd - 1 - - NULL
END
VIEW LOGINR
int out_token - 1 - - 0
END
filename:TRANSFER_infoFML32
#Generated from Repository file : /u01/common/patches/qingszha/AtmiSupport/miftest/viewfml
#Generated Time : 04/12/12 03:20:51
*base 1000
#name rel-number type flags comment
#---- ---------- ---- ------ -------
ACCOUNT_ID 1 long - The withdrawal account is 1st, and the deposit account is 2nd.
SAMOUNT 2 string - This is the amount to transfer. It must be greater than zero.
SBALANCE 3 string - The withdrawal account is 1st, and the deposit account is 2nd.
STATLIN 4 string - -
tpgetrepos(3c)
、 tpsetrepos(3c)
、tmloadrepos(1)
、 TMMETADATA(5)
、『Oracle Tuxedo Oracle Tuxedoアプリケーションの設定』のTuxedoサービス・メタデータ・リポジトリの管理に関する項<Default ?Font>
tpacladd
- 新しいアクセス制御リストをシステムに追加
tpacladd [-g
GID
[,
GID
. . . ]] [-t
type
]
name
tpacladd
を実行すると、Oracle Tuxedo ATMIのセキュリティ・データ・ファイルにアクセス制御リスト(ACL)の新しいエントリが追加されます。この情報は、サービス、イベント、アプリケーションの各キューに対するOracle Tuxedo ATMIのアクセス制御に使用されます。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
-g
GID
, . . .
-t
type
name
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpacladd
を構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpacladd
コマンドは正しく完了すると、終了コード0
で終了します。
tpacldel(1)
、tpaclmod(1)
、tpgrpadd(1)
、tpgrpdel(1)
、tpgrpmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpaclcvt
- Oracle Tuxedo ATMIのセキュリティ・データ・ファイルを変換する
tpaclcvt [-u
userfile
] [-g
groupfile
]
tpaclcvt
は、任意のバージョンのAUTHSVR
(Oracle Tuxedoリリース5.0で利用できるバージョン)で使用される既存のユーザー・ファイルを調べ、これをOracle Tuxedoリリース6.0で使用する形式に変換します。また、/etc/group
または類似のファイルに基づいてグループ・ファイルを生成し、/etc/passwd
ファイルを変換します。
-u
userfile
-g
groupfile
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpaclcvt
を構成のMASTER
上で実行する必要があります。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpadd(1)
、tpusradd(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpacldel [-t
type
]
name
tpacldel
を実行すると、Oracle Tuxedo ATMIのセキュリティ・データ・ファイルから既存のアクセス制御リスト(ACL)のエントリが削除されます。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
-t
type
name
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpacldel
を構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpacldel
コマンドは正しく完了すると、終了コード0
で終了します。
tpacladd(1)
、tpaclmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpaclmod [-g
GID
[,
GID
...]] [-t
type
]
name
tpaclmod
を実行すると、Oracle Tuxedoのセキュリティ・データ・ファイル内のアクセス制御リスト(ACL)のエントリが変更されて、グループ識別子リストが置き換えられます。この情報は、サービス、イベント、アプリケーションの各キューに対するOracle Tuxedo ATMIのアクセス制御に使用されます。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
-g
GID
, . . .
-t
type
name
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpaclmod
を構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpaclmod
コマンドは正しく完了すると、終了コード0
で終了します。
tpacladd(1)
、tpacldel(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpaddusr
- Oracle Tuxedoのパスワード・ファイルを作成
tpaddusr
usrname file
[cltname
[UID
]]
このコマンドを使用すると、アプリケーション管理者は、Oracle TuxedoシステムのAUTHSVR(5)サーバーでの使用に適したUNIXシステム形式のパスワード・ファイルを作成できます。tpaddusr
は、ユーザーのusrname
をパスワード・ファイルfile
に追加します(fileに/etc/passwd
を指定することはできません)。管理者は、追加したユーザーに割り当てるパスワードを入力するように要求されます。必要であれば、権限0600でfile
が作成されます。cltname
(指定された場合)は、パスワード・エントリの追加の修飾子を示します。usrname
またはcltname
(あるいは両方)には、AUTHSVR(5)でワイルドカードとして使用できるアスタリスク(*
)を指定することもできます。UID
(指定される場合)は、ユーザーの認証が正常終了したときに返される数値のユーザー識別子を示します。cltname
とUID
を指定しない場合、デフォルトはそれぞれ*
と-1
になります。
cltname
の値tpsysadm
とtpsysop
は、認証リクエストを処理する際にAUTHSVR(5)により特殊な処理が行われます。これらのcltname
値は、パスワード・ファイル内のワイルドカードのcltname
指定と照合されることはありません。
さらに、パスワード・ファイルへの追加順序に関係なく、ワイルドカードのエントリは、明示的に指定された値の後で処理されます。認証リクエストは、最初に一致するパスワード・ファイルのエントリに対してのみ認証されます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
このコマンドは、ユーザーをSECURITY
USER_AUTH
に構成するために使用します。SECURITY
ACL
またはMANDATORY_ACL
との互換性を保つためには(これらのセキュリティ・レベルに移行できるようにするためにも)、次の制限に従う必要があります。
tpusradd(1)
コマンドでは、これらの制限が自動的に適用されます。
以下の一連のコマンド入力は、簡単なパスワード・ファイルの構成方法を示しています。
$ # 1. Add usrname foo with wildcard cltname and no UID
$ tpaddusr foo /home/tuxapp/pwfile
$ # 2. Add usrname foo with cltname bar and UID 100
$ tpaddusr foo /home/tuxapp/pwfile bar 100
$ # 3. Add usrname foo with tpsysadm cltname and no UID
$ tpaddusr foo /home/tuxapp/pwfile tpsysadm
$ # 4. Add wildcard usrname with tpsysop cltname and no UID
$ tpaddusr '*' /home/tuxapp/pwfile tpsysop
$ # 5. Add wildcard usrname with wildcard cltname and no UID
$ tpaddusr '*' /home/tuxapp/pwfile '*'
次の表は、アプリケーションに対する様々なアクセス・リクエストを認証するのに使用するパスワード・ファイル・エントリ(上記の番号で示されます)を示します。N/A
は、パスワード・ファイルに一致するエントリが存在しないため、リクエストが許可されないことを示します。
Usrname Cltname Password Entry
------ ------- --------------
“foo” "bar" 2
"foo" "" 1
"foo" "tpsysadm" 3
"foo" "tpsysop" 4
"guest" "tpsysop" 4
"guest" "bar" 5
"guest" "tpsysadm" N/A
次に、上記で作成されたパスワード・ファイル用のAUTHSVR
インスタンスのためのSERVERS
セクション例を示します。
AUTHSVR SRVGRP=G SRVID=1 RESTART=Y GRACE=0 MAXGEN=2 CLOPT=”-A -- -f /home/tuxapp/pwfile”
tpdelusr(1)
、tpmodusr(1)
、tpusradd(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
tpdelusr
- Oracle Tuxedoのパスワード・ファイルからユーザーを削除
tpdelusr
usrname
file
[cltname
]
このコマンドを使用すると、アプリケーション管理者は、Oracle TuxedoシステムのAUTHSVR(5)サーバーでの使用に適したUNIXシステム形式のパスワード・ファイルを管理できます。tpdelusr
は、指定されたusrname
とcltname
の組合せのパスワード・ファイル・エントリを削除するために使用します(file
に/etc/passwd
を指定することはできません)。cltname
は指定しなければ、デフォルトで「*
」に設定されます。usrname
またはcltname
、もしくはこれらの両方に指定されたワイルドカードは、パスワード・ファイル内の対応するワイルドカード・エントリに対してのみ一致します。これらはすべての一致するエントリに対して拡張されるものではありません。
cltname
の値tpsysadm
とtpsysop
は、認証リクエストを処理する際にAUTHSVR(5)により特殊な処理が行われます。これらのcltname
値は、パスワード・ファイル内のワイルドカードのcltname
指定と照合されることはありません。
さらに、パスワード・ファイルへの追加順序に関係なく、ワイルドカードのエントリは、明示的に指定された値の後で処理されます。認証リクエストは、最初に一致するパスワード・ファイルのエントリに対してのみ認証されます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
このコマンドは、ユーザーをSECURITY
USER_AUTH
に構成するために使用します。SECURITY
ACL
またはMANDATORY_ACL
との互換性を保つためには(これらのセキュリティ・レベルに移行できるようにするためにも)、次の制限に従う必要があります。
tpusrdel(1)
コマンドでは、これらの制限が自動的に適用されます。
tpaddusr(1)
、tpmodusr(1)
、tpusradd(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpgrpadd [-g
GID]
grpname
tpgrpadd
は、Oracle Tuxedoセキュリティ・データ・ファイルに適切なエントリを追加することにより、システム上で新しいグループ定義を作成します。この情報は、AUTHSVR(5)サーバーによるOracle Tuxedoシステムの認証や、アクセス制御に使用されます。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
-g
GID
GID
のデフォルトは、1以上の次の使用可能な(一意の)識別子です。グループ識別子0は、「other」グループ用に予約されています。
grpname
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpgrpadd
を構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpadd
コマンドは正しく完了すると、終了コード0
で終了します。
tpgrpdel(1)
、tpgrpmod(1)
、tpusradd(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpgrpdel
grpname
tpgrpdel
は、Oracle Tuxedoセキュリティ・データ・ファイルから対応するグループのエントリを削除することによって、システムからグループの定義を削除します。ただし、ユーザー・ファイルからグループIDは削除されません。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
grpname
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpgrpdel
を構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpdel
コマンドは正しく完了すると、終了コード0
で終了します。
tpgrpadd(1)
、tpgrpmod(1)
、tpusradd(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpgrpmod [-g
GID
] [-n
name
]
grpname
tpgrpmod
は、Oracle Tuxedoセキュリティ・データ・ファイルの適切なエントリを変更することによって、指定したグループの定義を変更します。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
-g
GID
-n
name
grpname
このコマンドを実行する前に、グラフィカル・ユーザー・インタフェースまたはtmloadcf(1)
のいずれかを使用してアプリケーションを構成し、TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定する必要があります。アプリケーションがアクティブでない場合は、tpgrpmod
を構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpgrpmod
コマンドは正しく完了すると、終了コード0
で終了します。
tpgrpadd(1)
、tpgrpdel(1)
、tpusradd(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpkill - 掲示板をロックし、Tuxedoサーバーを終了
tpkill pid [pid . . .]
tpkillは掲示板をロックし、SIGKILLシグナルを指定のTuxedoサーバーに送信します。このコマンドによって、Tuxedoサーバーの終了時に掲示板の整合性を保証できます。 tpkillは、アクティブなTuxedoドメインで実行する必要があります。このコマンドでは、1つまたは複数のTuxedoサーバー・プロセスID値を指定できます。
tpkillはTuxedoネイティブ・クライアント・アプリケーションとして機能し、環境変数TUXDIR、TUXCONFIG、APPDIRを必要とします。
tpldapconf
—暗号化されたldapバインド・パスワードを生成してXAUTHSVR
構成ファイルに書き込むコマンド・ユーティリティ。
tpldapconf [-f ldap_conf_file]
tpldapconf
は、入力されたBINDDN
と暗号化されたバインド・パスワードをXAUTHSVR
構成ファイルに追加します。ユーザーは、このツールを使用してLDAP
バインド・パスワードを設定する必要があります。
指定された構成ファイルがない場合、デフォルトの構成ファイルとして$TUXDIR/udataobj/tpldap.xauth
ファイルが使用されます。
構成ファイルですでに指定されている場合、BINDDN
またはPASSWORD
がコメント・アウトされ、新しいBINDDN
またはPASSWORD
で置換されます。
-f ldap_conf_file
tpldapconf
コマンドは、Tuxedo System/Tリリース12C以降が動作している非/WSサイト上でのみ使用できます。
tpldapconf
コマンドは正しく完了すると、終了コード0で終了します。
$tpldapconf – f tpldap.xauth
tpmigldap
- TuxedoユーザーおよびグループをWebLogic Serverに移行
tpmigldap [-hhostname
] [-pport
] [-dwls_domain
] [-rwls_realm
]
[-fuser_password
] [-bbind_DN
] [[-wldap_adm_password
]|
[-c]] [-utpusr
] [-gtpgrp
] [-iUID-kw
] [-eGID-kw
]
tpmigldap
を実行すると、WebLogic Serverのデフォルトのセキュリティ・データベースにTuxedoのユーザーおよびグループを追加できます。このコマンドを実行する前に、SECURITYをUSER_AUTH、ACLまたはMANDATORY_ACLに設定したTuxedoの構成を作成する必要はありません。
-h
hostname
-p
port
-d
wls_domain
-r
wls_realm
-f
user_password
-b
bind_DN
-w
ldap_adm_password
-c
-u
tpusr
-g
tpgrp
-i
UID-kw
-e
GID-kw
tpmigldap
コマンドは、Tuxedo System/Tリリース8.1以降が動作している非/WSサイト上でのみ使用できます。
tpmigldap
コマンドは正しく完了すると、終了コード0で終了します。
$tpmigldap -h proton -c -d wlsdomain -r wlsrealm -b cn=Admin
LAUTHSVR(5)
tpmigldif
-- ユーザーおよびグループ情報をLDAPデータ交換形式(LDIF)に移行
tpmigldif [-t user|group] [-u tpusr] [-g tpgrp] -f template -o output
tpmigldif
コマンドを呼び出すと、ユーザーおよびグループの情報のLDIF出力ファイルが生成されます。ユーザーまたはグループの情報(あるいはその両方)が1行ごとに処理されます。このコマンドは、GAUTHSVR(5)
とともに使用します。
-t user|group
-u tpusr
-g tpgrp
-f template
-o output
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
tpmigldif
コマンドは正しく完了すると、終了コード0で終了します。
GAUTHSVR(5)
tpmodusr
- Oracle Tuxedoのシステム・パスワード・ファイルを保守
tpmodusr
usrname
file
[cltname
]
このコマンドを使用すると、アプリケーション管理者は、Oracle TuxedoシステムのAUTHSVR(5)サーバーでの使用に適したUNIXシステム形式のパスワード・ファイルを管理できます。このコマンドを実行する前に、SECURITY
をUSER_AUTH
、ACL
またはMANDATORY_ACL
に設定したOracle Tuxedoの構成を作成する必要があります。
tpmodusr
を使用して、パスワード・ファイルfile
に指定されたユーザーのパスワードを変更します(fileに/etc/passwd
を指定することはできません)。ユーザーに関連付ける新しいパスワードを入力するように管理者が求められます。cltname
を指定しない場合、デフォルトは「*
」になります。usrname
またはcltname
、もしくはこれらの両方に指定されたワイルドカードは、パスワード・ファイル内の対応するワイルドカード・エントリに対してのみ一致します。これらはすべての一致するエントリに対して拡張されるものではありません。
cltname
の値tpsysadm
とtpsysop
は、認証リクエストを処理する際にAUTHSVR(5)により特殊な処理が行われます。これらのcltname
値は、パスワード・ファイル内のワイルドカードのcltname
指定と照合されることはありません。
さらに、パスワード・ファイルへの追加順序に関係なく、ワイルドカードのエントリは、明示的に指定された値の後で処理されます。認証リクエストは、最初に一致するパスワード・ファイルのエントリに対してのみ認証されます。
このコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
このコマンドは、ユーザーをSECURITY
USER_AUTH
に構成するために使用します。SECURITY
ACL
またはMANDATORY_ACL
との互換性を保つためには(これらのセキュリティ・レベルに移行できるようにするためにも)、次の制限に従う必要があります。
tpusrmod(1)
コマンドでは、これらの制限が自動的に適用されます。
tpaddusr(1)
、tpdelusr(1)
、tpusradd(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpusradd
- システムに新しいプリンシパルを追加します。
tpusradd [-u
UID
] [-g
GID
] [-c
client_name
]
usrname
tpusradd
を実行すると、Oracle Tuxedoセキュリティ・データ・ファイルに新しいプリンシパル(ユーザーまたはドメイン)のエントリが追加されます。この情報は、AUTHSVR(5)サーバーでユーザー単位の認証に使用されます。
tmloadcf(1)
のいずれかを使用して、アプリケーションを構成します。TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定します。 SECURITY
をUSER_AUTH
、ACL
、またはMANDATORY_ACL
に設定します。 アプリケーションがアクティブでない場合、tpusradd
を構成のMASTER
上で実行する必要があります。アクティブな場合は、このコマンドはどのアクティブなモードでも実行できます。
このコマンドで作成されたシステム・ファイル・エントリは1行の制限が512文字です。いくつもの(複数の)オプションに長い引数を指定するとこの制限を超えることがあります。
-u
UID
UID
は、128Kより小さい10進数の正の整数でなければなりません。UID
は、アプリケーションの既存の識別子のリスト内で一意でなければなりません。UID
のデフォルトは、1以上の次の使用可能な(一意の)識別子です。
-g
GID
-c
client_name
:
)または改行文字(¥n
)を使うことはできません。このオプションを指定しないと、デフォルトはワイルドカード「*」
になり、どのようなクライアント名を指定しても認証が成功します。
usrname
:
)、シャープ(#
)または改行文字(¥n
)を使うことはできません。ユーザー名は、アプリケーションの既存の識別子のリスト内で一意でなければなりません。
管理者は、追加したユーザーに割り当てるパスワードを入力するように要求されます。
ユーザー単位の認証や管理者のパーミッションの構成の詳細は、「AUTHSVR(5)」を参照してください。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpusradd
コマンドは正しく完了すると、終了コード0
で終了します。
以下の一連のコマンドは、簡単なユーザー・ファイルの作成例を示します。
$ # 1. Add usrname foo with cltname bar and UID 100
$ tpusradd -u 100 -c bar foo
$ # 2. Add usrname foo with tpsysadm cltname and no UID
$ tpusradd -c tpsysadm foo
次の表は、アプリケーションへの様々なアクセス・リクエストの認証に使用されるユーザー・エントリ(上に書かれている数字で示されます)と、関連付けられるUID/GIDを示します。N/A
は、ユーザー・ファイルに一致するエントリが存在しないため、リクエストが許可されないことを示します。
Usrname Cltname Password Entry Uid Gid
------- ------- -------------- --- ---
"foo" "bar" 2 100 0
"foo" "" 1 1 0
"foo" "tpsysadm" 3 0 8192
"guest" "tpsysadm" N/A N/A N/A
次に示す例は、上で作成したユーザー・ファイルを処理するAUTHSVR
のインスタンスの「SERVERS」セクション・エントリです。
AUTHSVR SRVGRP=G SRVID=1 RESTART=Y GRACE=0 MAXGEN=2 CLOPT=”-A”
tpgrpadd(1)
、tpgrpdel(1)
、tpgrpmod(1)
、tpusrdel(1)
、tpusrmod(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tpusrdel
usrname
tpusrdel
コマンドは、システムからプリンシパル(ユーザーまたはドメイン名)定義を削除します。指定したユーザーの定義を削除します。usrname
に、削除する既存のユーザー名を指定します。
tmloadcf(1)
のいずれかを使用して、アプリケーションを構成します。TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定します。 SECURITY
をUSER_AUTH
、ACL
、またはMANDATORY_ACL
に設定します。アプリケーションがアクティブでない場合、tpusradd
は構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpusrdel
コマンドは正しく完了すると、終了コード0
で終了します。
tpgrpadd(1)
、tpgrpdel(1)
、tpgrpmod(1)
、tpusradd(1)
、tpusrmod(1)
tpusrmod [-uUID
] [-gGID
] [-cclient_name
] [-lnew_login
] [-p]usrname
tpusrmod
を実行すると、Oracle Tuxedoセキュリティ・データ・ファイルのプリンシパル(ユーザーまたはドメイン)のエントリが変更されます。この情報は、AUTHSVR(5)サーバーによるOracle Tuxedoシステム認証に使用されます。
tmloadcf(1)
のいずれかを使用して、アプリケーションを構成します。TUXCONFIG
ファイルを指すようにTUXCONFIG
環境変数を設定します。 SECURITY
をUSER_AUTH
、ACL
、またはMANDATORY_ACL
に設定します。アプリケーションがアクティブでない場合、tpusradd
は構成のMASTER
上で実行する必要があります。アプリケーションがアクティブな場合は、このコマンドはどのアクティブなノードでも実行できます。
このコマンドで作成されたシステム・ファイル・エントリは1行の制限が512文字です。いくつもの(複数の)オプションに長い引数を指定するとこの制限を超えることがあります。
-u
UID
-g
GID
-c
client_name
-l
new_login
:
)、シャープ(#
)または改行文字(¥n
)を使うことはできません。ユーザー名は、アプリケーションの既存の識別子のリスト内で一意でなければなりません。また、このオプションを指定すると、-p
オプションによってパスワードを再設定することになります。
-p
usrname
ユーザー単位の認証や管理者のパーミッションの構成の詳細は、「AUTHSVR(5)」を参照してください。
このコマンドは、Oracle Tuxedoサーバー環境がサポートされるプラットフォームで実行できます。
tpusrmod
コマンドは正しく完了すると、終了コード0
で終了します。
tpgrpadd(1)
、tpgrpdel(1)
、tpgrpmod(1)
、tpusradd(1)
、tpusrdel(1)
、AUTHSVR(5)
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
tuxadm
- Oracle Tuxedo管理コンソールCGIゲートウェイ
http://cgi-bin/tuxadm[TUXDIR=tuxedo_directory | INIFILE=initialization_file][other_parameters]
tuxadm
は、ブラウザから管理コンソールを初期化するために使用するCGI (Common Gateway Interface)プロセスです。「形式」に示されているように、このプログラムはWebブラウザからアクセスする場所(つまりURL)を表すためだけに使用でき、通常、標準コマンドライン・プロンプトからは実行されません。ほかのCGIプログラムと同様に、tuxadm
はQUERY_STRING
環境変数を使用してその引数一覧を解析します。
tuxadm
は引数を解析し、管理コンソールの初期化ファイルを見つけます。TUXDIR
パラメータが存在する場合、初期化ファイルはデフォルトで$TUXDIR/udataobj/webgui/webgui.ini
に設定されます。INIFILE
オプションが存在する場合は、パラメータの値は初期化ファイルへのフルパスになります。その他のパラメータが存在する場合もあります。
初期化ファイルの値をオーバーライドするために追加のパラメータを使用することもできます。初期化ファイルのパラメータの完全なリストは、wlisten
のリファレンス・ページを参照してください。実際の初期化ファイルで許される値と一貫性のあるオーバーライドがされないかぎり、tuxadm
プロセスによってENCRYPTBITS
パラメータがオーバーライドされることはありません。
tuxadm
の通常の処理は、管理コンソール・アプレットを起動するWebページを構築するHTMLコマンドを標準出力に生成することです。Webページの一般的なフォーマットは、初期化ファイルのTEMPLATE
パラメータによって制御されます。これには、任意のHTMLコマンドに加えて、管理コンソールのアプレットが表示される場所には1行に特殊な文字列%APPLET%
のみが含まれます。初期化ファイルの他のパラメータ(CODEBASE
、WIDTH
、HEIGHT
など)を使用して、管理コンソールのインスタンスを生成するために必要なすべてのパラメータを含む正しいAPPLET
タグが生成されます。
注意: | Oracle Tuxedoでは、管理コンソールのセキュリティの脆弱性に関するいくつか問題を解決しています。このリリースで解決された脆弱性の詳細は、「セキュリティ・アドバイザリ」を参照してください。 |
注意: | 無効な入力が行われると、その無効の正確な内容を報告するメッセージのかわりに、管理コンソールからTUXDIR およびINIFILE の設定を確認するよう求める汎用的なエラー・メッセージが戻されるようになりました。この変更により、「情報の開示」や「クロスサイト・スクリプティング」といったセキュリティ・アタックを撃退できます。 |
注意: | 管理コンソールでは、アクセスをより困難にするため、URLで指定するパラメータをTUXDIR のみに限定する設定が可能になりました。他のパラメータ(たとえばINIFILE )をURLに指定すると、アクセスが失敗します。 |
注意: | この設定を有効にするには、環境変数TM_CONSOLE_DISALLOW_URLARGS をy に設定します。デフォルト構成では、この設定は無効になっています。 |
tuxadm
は、障害が発生した場合、エラー・メッセージを含むHTMLコードを生成します。CGIプログラムが動作する仕組みからすると、tuxadm
からいかなる種類のエラー・コードが戻される理由はありません。
tuxwsvr
- Oracle Tuxedo管理コンソールとともに使用するミニWebサーバー。
tuxwsvr
-l
nlsaddr
[-d
device
] [-L
logfile
] [-F]-i
initialization_file
tuxwsvr
はWorld Wide Webサーバー・プロセスです。これを使用すれば、顧客はOracle Tuxedo管理コンソール・プロセスが動作するマシン上に商用Webサーバーまたはパブリック・ドメインWebサーバーを設置していなくても、Oracle Tuxedo管理コンソール・プロセスをサポートすることができます。tuxwsvr
は、特にその他の指定がないかぎり、起動後はバックグラウンドで動作し、マシンが停止するか、オペレーティング・システム・コマンドを使用してtuxwsvr
プロセスが強制終了されるまで実行を継続します。
tuxwsvr
は、Oracle Tuxedo管理コンソールのサポートに必要なすべての機能を含んでいますが、事前分岐プロセス、サーバー側のHTMLインクルード(.shtml
ファイル)、デフォルトのディレクトリ索引、https
接続など、商用Webサーバー用の多数の機能は含まれていません。ただし、Oracle Tuxedo管理コンソールは独自の暗号化プロトコルを実装しているため、https
接続がなくても安全なモードで実行することができます。パフォーマンス上の理由から、汎用的なWebサーバーでは、受信されたリクエストに対するDNS逆ルックアップは実行されません。
tuxwsvr
で使用されるコマンドライン・オプションには、以下のものがあります。
-l
nlsaddr
hostname:port_number
" #.#.#.#:port_number
" 1つ目の形式では、tuxwsvr
がローカル名を解決する手法(通常はDNS)を使用してhostname
のアドレスを検索します。hostname
にはローカル・マシン名を指定し、ローカル名解決の機能でhostname
をローカル・マシンのアドレスに明確に解決する必要があります。 2つ目の形式は、ドットで区切られた10進数(#.#.#.#
)です。ドット区切りの10進数形式では、各#
には0
- 255
の数字を使用します。このドット区切りの10進数は、ローカル・マシンのIPアドレスを表します。 どちらの形式の場合も、port_number
にはtlisten
プロセスが接続リクエストの受信をリスニングするTCPポート番号を指定します。port_number
には、0
- 65535
までの数字または名前を指定します。port_number
には、ローカル・マシンのネットワーク・サービス・データベース内に存在する名前を指定する必要があります。アドレスは、先頭に「 0x
」をつけ、16進形式で指定することもできます。先頭の0x
に続く文字として、0
- 9
までの数字か、またはA
からF
までの文字(大文字と小文字は区別しない)を指定できます。16進数の形式は、IPX/SPXやTCP/IPのような任意のバイナリ・ネットワーク・アドレスに使うことができます。アドレスはまた、任意の文字列として指定することもできます。たとえば、STARLANネットワークでは文字列アドレスが使用されます。
-d
device
-L
logfile
tuxwsvr
がWebリクエストとエラー・メッセージのログ記録用に使用するファイル名の接頭辞。実際のログ・ファイルの名前は、月、日、年を表す7文字の文字列.
mmddyy
をこの接頭辞に追加したものになります。このオプションを指定しない場合、Webサーバーのログ・ファイルの接頭辞はカレント・ディレクトリのWB
です。tuxwsvr
プロセスを実行する各日の最初のログ・メッセージは新規ファイルに書き込まれます。
-F
tuxwsvr
をバックグラウンドに配置せずに、フォアグラウンドで実行することを指定します。このオプションは主にテストとデバッグで役立ちます。(tuxwsvr
プロセスは、特に指定されない場合は自動的にバックグラウンドで実行します。コマンドラインで後にアンパサンド(&
)を付ける必要はありません。)
-i
initialization_file
初期化ファイルには、Webサーバーで必要なディレクトリへのマッピングが含まれます。コメント行が含まれることもあります。(コメント行は先頭に#
記号が付いています。)コメント行以外の各行には、空白で区切られた3つのフィールドが含まれます。
初期化ファイルでコメント行以外の最後の行には、接頭辞「/」
が必要です。これよりも前の行に接頭辞「/」
が付いていると、警告メッセージが生成されます。
初期化ファイルは、起動時に1回読み取られます。したがって、このファイルに何らかの変更を加えた場合は、変更を有効にする前にtuxwsvr
を停止して再起動する必要があります。
CGI /cgi-bin /home/tuxedo/udataobj/webgui/cgi-bin
CGI /webgui /home/tuxedo/udataobj/webgui/cgi-bin
HTML /java /home/tuxedo/udataobj/webgui/java
HTML /doc /home/tuxedo/doc
HTML / /home/tuxedo/udataobj/webgui
次のようなマシンのポート8080でWebサーバーが稼働しているとします。
tuxmach.acme.com
http://tuxmach.acme.com:8080/cgi-bin/tuxadm?TUXDIR=/home/tuxedo
http://tuxmach.acme.com:8080/webgui/tuxadm?TUXDIR=/home/tuxedo
初期化ファイルのCGIディレクトリの値として$TUXDIR/bin
を指定することはお薦めしません。こうすると、Webユーザーが任意のOracle Tuxedo実行可能ファイルを呼び出せるようになるためです。(ただし、そのようなユーザーがtuxadm
以外の実行可能ファイルの出力を見ることはできません。このような他の実行可能ファイルはCGIプログラムとして書き込まれないためです。)
また、前の例では、最初のHTML行は、2つ目のHTML行でサブディレクトリの/java
を同じパスにマッピングしているため重複しています。この最初の行を含める理由は、ユーザーによってはHTMLドキュメントを格納している場所とは別の場所にJavaクラス・ファイルを配置することがあるためです。
HTML /tuxedo/webgui D:\\tuxedo\\htmldocs
CGI /cgi-bin C:\\cgi-bin
HTML /java D:\\tuxedo\\udataobj\\webgui\\java
HTML / D:\\tuxedo\\udataobj\\webgui
マシンntsvr1のポート80でWebサーバーが稼働しているとします。次のURLを入力します。
http://ntsvr1/tuxedo/webgui/page1.html
D:\\tuxedo\\htmldocs\\page1.html
おそらくこのファイルは、管理コンソールを起動する、顧客によって作成されたページです。
tuxwsvr
プロセスを正常に終了する唯一の方法は、プロセスにSIGTERM
シグナルを送ることです。
tuxwsvr
プロセスは、商用Webサーバーを設置していない顧客向けに、Oracle Tuxedo管理GUI用のWebサーバーとして提供されています。UNIXシステムの場合は、次の形式のコマンドラインをUNIXの初期化スクリプトに追加して、Webサーバーが自動的に起動するようにすることをお薦めします。
TUXDIR=tuxdir_path_name
$TUXDIR/bin/tuxwsvr -lnlsaddr
-iinitialization_file
tuxdir_path_name
は、Oracle Tuxedoシステム・ソフトウェアの場所へのフルパス名を表します。nlsaddr
は、このtuxwsvr
プロセスによって使用される、ネットワーク上のアドレスです。
tuxwsvr
プロセスを起動する別の方法として、上記の推奨コマンドラインを使用して手動で起動する方法があります。また、cron
ジョブを使用して定期的(毎日またはそれより頻繁)にtuxwsvr
プロセスを起動する方法もあります。同じネットワーク・アドレスを使用してtuxwsvr
コマンドを重複して呼び出すと、コマンドは自動的に終了し、状況に応じてメッセージが記録されます。
tuxwsvr
プロセスに対してアプリケーション管理者が指定するネットワーク・アドレスの制限は、指定したネットワークの一意のアドレスであることだけです。STARLANネットワークの場合は、通常、推奨アドレスuname.tuxwsvr
が一意の名前になります。TCP/IPの場合は、アドレスは、アプリケーション管理者が選択した一意のポートと、ローカル・マシンのノード識別子を組み合せたものです(0x0002
ppppnnnnnnnn
)。特定のマシンの一意のポート値(pppp
)は、そのネットワークとマシンの組合せのユーザー間で調整する必要があります。多くの場合、数値が低い方のポート番号はシステム関連のサービスで使用されるため、高いポート番号をお薦めします。ノード・フィールドの適切な値(nnnnnnnn
)は、次の手順を実行してから、/etc/hosts
ファイルで確認できます。
たとえば、tuxwsvr
を実行しているローカル・マシンでTCP/IPアドレス指定機能を使用している場合を考えます。マシン名はbackus.company.com
で、アドレスは155.2.193.18
です。さらに、tuxwsvr
はポート番号2334
でリクエストを受け取るとします。また、このポート番号2334
がbankapp-tuxwsvr
という名前のネットワーク・サービス・データベースに追加されているとします。-l
オプションで指定するアドレスは、次に示す方法で表現できます。
最後に示す行は、アドレスを16進数形式で表したものです。0002
はTCP/IPアドレスの先頭部分、091E
はポート番号2334
を16進数に変換したもの、および9B02C112
はIPアドレス155.2.193.18
を16進数に変換したものです。(最後の変換部分については、155
は9B
、2
は02
のように変換されています。)
STARLANネットワークの場合は、通常、推奨アドレスuname
.tuxwsvr
がユニークな名前になります。
txrpt
- Oracle Tuxedo ATMIシステム・サーバー/サービス・レポート・プログラム
txrpt
[-t
] [-n
names
] [-d
mm/dd
] [-s
time
] [-e
time
]
txrpt
コマンドを実行すると、Oracle Tuxedo ATMIシステム・サーバーの標準エラー出力の分析が行われ、そのサーバーでサービス処理にかかる時間のサマリーが生成されます。レポートには、期間内の各サービスのディスパッチ回数と平均処理時間(秒)が表示されます。txrpt
は、標準入力または入力用にリダイレクトされた標準エラー・ファイルからの入力を読み込みます。標準エラー・ファイルは、servopts(5)の選択肢から-r
オプションを使用して起動されたサーバーによって作成されます。-e
servopts
オプションを使用すると、ファイル名を指定できます。複数のファイルを、txrpt
用に1つの入力ストリームに連結することができます。txrpt
コマンドには、以下のオプションがあります。
-t
-n
names
-d
mm/dd
-s
time
-e
time
txrpt
によって生成されるレポートは、1日のみを対象とします。入力ファイルに複数の日からのレコードが含まれている場合、-d
オプションがレポート対象の日付を制御します。
サーバーがtxrpt
を介して解析統計情報を収集する場合、ULOGDEBUG
変数を"y
"には設定しないようにしてください。ファイル内のデバッグ・メッセージをtxrpt
が間違って解釈してしまいます。
txrpt -nSVC1 -d10/15 -s11:01 -e14:18 newr
START AFTER: Thu Oct 15 11:01:00 1992
END BEFORE: Thu Oct 15 14:18:00 1992
SERVICE SUMMARY REPORT
SVCNAME 11a-12n 13p-14p 14p-15p TOTALS
Num/Avg Num/Avg Num/Avg Num/Avg
------ -------- -------- -------- -------
SVC1 2/0.25 3/0.25 1/0.96 6/0.37
------- ------- ------- ------- -------
TOTALS 2/0.25 3/0.25 1/0.96 6/0.37
上記の例は、SVC1
が指定された時間内に全部で6回リクエストされたことを示しています。リクエストを処理する時間は、平均0.37秒でした。
ud
、wud
- Oracle Tuxedo ATMIドライバ・プログラム
ud [-p] [-d
delay
] [-e
error_limit
] [-r] [-s
sleeptime
] [-b timeout] [-t
timeout
] [-n] [-u {n | u | j}] [-U
usrname
] [-C
cltname
] [-S
buffersize
]
ud32 [options
]
wud [options
]
wud32 [options
]
ud
は、Fextread()
を使用して標準入力から入力パケットを読み取ります(詳細は、Fextread、 Fextread32(3fml)に関する項を参照してください)。パケットは、サービス名として識別されるフィールドを含む必要があります。入力パケットはFMLフィールド化バッファ(FBFR
)に転送され、サービスに送信されます。FBFR
を受信するサービスが、レコードをデータベースに追加するサービスの場合、ud
により、Oracle Tuxedo ATMIシステムが認識しているデータベースにバルク・フィールド化データを入力する方法が提供されます。
入力パケットの行の先頭を示すフラグ(「入力形式」を参照)を使用することにより、ud
をOracle Tuxedo ATMIサービスのテストに利用できます。
デフォルトでは、FBFR
をサービスに送信した後、ud
はFBFR
が戻されることを想定します。送信および応答されたFBFR
はud
の標準出力に出力されます。エラー・メッセージは標準エラーに出力されます。
ud32
は、FBFR32
タイプのFML32バッファを使用します。
wud
およびwud32
はワークステーション・ライブラリを利用して構築されたバージョンのud
とud32
です。ワークステーションだけをサポートしているサイトでは、wud
およびwud32
コマンドだけが提供されています。
-p
-d
delay
には最大の遅延時間(秒)を指定します(これを超えるとタイムアウトします)。タイムアウトが発生した場合は、エラー・メッセージがstderr
に出力されます。ud
が前のリクエストの応答メッセージを遅延時間内に受け取ると、それらのメッセージは遅延RTNパケットと示されます。つまり、遅延時間内に複数の応答パケットを受信できます。-d
オプションは、DOSオペレーティング・システムのwud
では使用できません。 注意: | このオプションは、wud コマンドおよびwud32 コマンドでは使用できません。 |
-e
error_limit
-r
-s
sleeptime
-b
timeout
ud
は、非トランザクション・モードでブロッキング・リクエストを送信する必要があります。timeout
には、ブロッキング・リクエストがタイムアウトするまでの秒数を指定します。-bオプションは、-t
オプションや-d
オプションと組み合せて使用することはできません。
-t
timeout
ud
は、トランザクション・モードでリクエストを送信する必要があります。timeout
には、トランザクションがタイムアウトするまでの秒数を指定します。-d
delay
および-r
(応答なし)オプションは、-t
オプションと組み合せて使用できません。
-u
{n
| u
| j
}
n
オプションは、バッファを初期化しなおすことを表します(新しいバッファとして扱います)。u
オプションは、Fupdate()
を使用してバッファを応答バッファで更新することを指定します。j
オプションは、Fojoin()
を使用して応答バッファをリクエスト・バッファに結合することを指定します。詳細は、「Fupdate、Fupdate32(3fml)」および「Fojoin、Fojoin32(3fml)」を参照してください。
-n
-U
usrname
-C
cltname
-S
buffersize
-d
delay
および-r
オプションは、相互に排他的です。
入力パケットは、次のようにフォーマットされた行で構成されます。
flag
はオプションです。flag
を指定しなかった場合には、fldname
で指定され、値fldval
を持つフィールドの新しいオカレンスがフィールド化バッファに追加されます。flag
を指定する場合は、次のいずれかとします。
+
-
=
#
fldname
がリテラル値SRVCNM
であると、fldval
はFBFR
を受け取るサービスの名前となります。
長いフィールド値は、継続行の先頭にタブを挿入することにより、次の行にまたがって入力できます。
改行文字だけで構成される行は入力の終わりを示し、そのパケットをud
に送ります。
入力パケットが文字n
と改行文字で構成される行で始まる場合、FBFR
は初期化しなおされます。FBFR
の再初期化は、コマンドラインに-un
オプションを使用することですべてのパケットに指定することができます。
表示できない文字を入力パケットに入力するには、エスケープ規則を使用して、その後に必要な文字を2文字の16進表現で入力します。(詳細は、UNIXリファレンス・マニュアルのascii(5)
の項を参照してください。)シェルからエスケープを保護するためにもう1つバックスラッシュが必要です。たとえば、空白は\20
として入力データに入力できます。ud
では、このフォーマットのすべての入力が認識されますが、最も役立つのは表示できない文字の場合です。
最初、ud
はフィールド化バッファを標準入力から読み取り、サービスに送信します。このサービスの名前は、fldname
がSRVCNM
と等しい行のfldval
に指定されています。-r
オプションが選択されないかぎり、ud
は応答フィールド化バッファを待機します。応答を取得した後で、ud
は標準入力からもう1つのフィールド化バッファを読み取ります。そのとき、ud
は戻されたバッファを現在のバッファとして保持します。これは、2つ目のフィールド化バッファを構成する標準入力の行が、戻されたバッファに追加されるということです。つまり、デフォルトの処理では、ud
が現在のバッファ(一連の入力行によって追加された内容)を維持します。セットは空白行で区切られます。現在のバッファを破棄(つまり、FBFR
構造体の再初期化)するように、ud
に指定することができます。これには、-un
オプションをコマンドラインに指定するか、文字n
だけを含む行を入力セットの最初の行に含めます。応答バッファの内容をリクエスト・バッファにマージするように、ud
に指定することもできます。これには、-uu
オプション(Fupdate
が使用される)または-uj
オプション(Fojoin
が使用される)を指定します。
ud
をセキュリティ付きアプリケーションで実行する場合は、アプリケーション・パスワードを指定しないとアプリケーションにアクセスできません。標準入力が端末である場合、ud
は、応答のエコーをオフの状態でユーザーにパスワードの入力を求めます。ただし、ud
は標準入力のバルク入力を受け入れるため、通常、標準入力は端末ではなくファイルです。この場合、パスワードは環境変数APP_PW
から取得されます。アプリケーション・パスワードが必要な場合に、この環境変数が指定されていないと、ud
は異常終了します。
これらのコマンドは、Oracle Tuxedo ATMIサーバー環境がサポートされるプラットフォームで実行できます。
FLDTBLDIR
およびFIELDTBLS
を設定してエクスポートする必要があります。FLDTBLDIR
のディレクトリのリストには、$TUXDIR/udataobj
が含まれていなければなりません。FIELDTBLS
には、フィールド表の1つとしてUsysflds
が含まれていなければなりません。
標準入力が端末でない場合、保護アプリケーションではAPP_PW
をアプリケーション・パスワードに設定しなければなりません。TPIDATA
は、標準入力が端末でない場合、認証サーバーで保護アプリケーションにアプリケーションを結合するのに必要なそのアプリケーション特定のデータに設定しなければなりません。
また、ワークステーションからアクセスする場合には、WSNADDR
、WSDEVICE
およびWSTYPE
(オプション)を設定しなければなりません。クライアント・プロセス用に環境変数を設定する方法についての詳細は、「compilation(5)」を参照してください。
ud
は、クライアント・プロセスになれないとき、必要なFBFR
を作成できないとき、あるいはUNIXシステムのエラーを検出したときには異常終了します。また、入力パケットのストリーム処理時に25個を超えるエラーを検出すると異常終了します。これらのエラーとしては、構文エラー、サービス名の欠落、トランザクションの開始またはコミットのエラー、入力FBFR
送信時あるいは応答FBFR
受信時のタイムアウトまたはエラーなどがあります。
入力ストリームの最後のフィールド化バッファは空白行で終えてください。
$ud <EOF>
SRVCNM BUY
CLIENT J. Jones
ADDR 21 Valley Road
STOCK AAA
SHARES 100
<CR>
+SRVCNM SELL
+STOCK XXX
+SHARES 300
STOCK YYY
SHARES 150
<CR>
n
SRVCNM BUY
CLIENT T. Smith
ADDR 1 Main Street
STOCK BBB
SHARES 175
<CR>
+SRVCNM SELL
+STOCK ZZZ
+SHARES 100
<CR>
EOF
$
この例では、最初にud
は、フィールド化バッファをサービスBUY
に送信します。このとき、CLIENT
フィールドをJ.Jones、ADDR
フィールドを21 Valley Road、STOCK
フィールドをAAA
、SHARES
フィールドを100に設定します。
フィールド化バッファがBUY
サービスから戻されると、ud
は、次の行セットを使用してSRVCNM
をSELL
に、STOCK
をXXX
に、SHARES
を300
に変更します。また、STOCK
フィールドの追加オカレンス値をYYY
で、SHARES
フィールドの追加オカレンス値を150で作成します。このフィールド化バッファはこの後、SELL
サービス(SRVCNM
フィールドの新しい値)に送られます。
SELL
が応答フィールド化バッファを送信して戻すと、ud
は、文字n
のみの行から始まる一連の行を廃棄します。次に、ud
は、SRVCNM
をBUY
、CLIENT
をT. Smith
のように設定して、まったく新しい入力パケットの作成を開始します。
Fextread、Fextread32(3fml)、compilation(5)
UNIXシステムのリファレンス・マニュアルのascii(5)
『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
『Oracle Tuxedo FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
『Oracle Tuxedo Oracle Tuxedoアプリケーション実行時の管理』<Default ?Font>
viewc
、viewc32
- Oracle Tuxedo ATMI VIEWを生成するVIEWコンパイラ
viewc [-n] [-dviewdir
] [-C]viewfile
[viewfile
. . . ]
viewc32 [-n] [-dviewdir
] [-C]viewfile
[viewfile
. . . ][-s][-S]
viewc
はVIEWコンパイラ・プログラムです。ソースVIEWファイルを取り込み、以下のファイルを作成します。
viewc32
は、32ビットのFMLで使用します。環境変数FIELDTBLS32
およびFLDTBLDIR32
を使用します。
viewfile
は、ソース・ビュー記述を収めているファイルです。複数のviewfile
をviewc
コマンドラインに指定できます。ただし、同じVIEW
名が複数のviewfile
に使用されていない場合にかぎります。
デフォルトでは、viewfile
のすべてのビューがコンパイルされ、複数のファイルが作成されます。ビュー・オブジェクト・ファイル(接尾辞.V
)とCヘッダー・ファイル(接尾辞.h
)です。代替ディレクトリが-d
オプションで指定されないかぎり、オブジェクト・ファイルの名前はカレント・ディレクトリのviewfile.V
です。Cヘッダー・ファイルは、カレント・ディレクトリ内に作成されます。
-C
オプションを指定すると、viewfile
で定義しているVIEW
1つにつき1つのCOBOLコピー・ファイルが作成されます。これらのコピー・ファイルはカレント・ディレクトリに作成されます。
viewc
によるコンパイル時には、コンパイラによって、viewfile
に指定されているフィールド識別子とフィールド名が、フィールド表ファイルから得られる情報と照合され、後で使用するためにマッピング情報がオブジェクト・ファイルに格納されます。したがって、環境変数
FIELDTBLS
およびFLDTBLDIR
を設定およびエクスポートして、関連するフィールド表ファイルを指すようにすることが重要です。FIELDTBLS
およびFLDTBLDIR
の詳細は、『Oracle Tuxedo FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』を参照してください。<Default ?Font>および『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
viewc
コンパイラがフィールド名とそのフィールド識別子の対応をとれなかった場合(環境変数が正しく設定されていなかったり、フィールド表ファイルにフィールド名が含まれていなかった場合)、警告メッセージ
「Field not found」
が表示されます。
-n
オプションを使用すれば、FML
バッファにマッピングされていないC構造体に対応するVIEW記述ファイルを作成することができます。『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>は、このような独立したビュー記述ファイルの作成および使用方法について説明しています。
-n
-d
viewdir
-C
s
-C
オプションとともに使用されます。 注意: | Windowsプラットフォームでは大文字/小文字が区別されるため、このオプションはWindowsプラットフォームでは意味がありません。 |
-S
CC
viewc
は通常、デフォルトのC言語コンパイル・コマンドを使用してクライアント実行可能コードを生成します。デフォルトのC言語コンパイル・コマンドは、サポートされているオペレーティング・システムごとに定義されており、UNIXシステムの場合はcc
(1)です。代替コンパイラを指定できるようにするため、viewc
は環境変数CC
が存在するかどうかを調べます。CC
がviewc
の環境に存在しない場合、またはこの環境変数が文字列""
である場合、viewc
はデフォルトのC言語コンパイラを使用します。環境内にCC
が存在する場合、実行されるコンパイラの名前がCCの値となります。
CFLAGS
CFLAGS
は、コンパイラ・コマンドラインの一部として引き渡される引数のセットを指定するときに使用します。CFLAGS
がviewc
の環境に存在しない場合、または文字列""
である場合、buildclient
はコンパイラ・コマンドライン引数を追加しません。
出力VIEWファイルは、マシンおよびコンパイラに依存するバイナリ・ファイルです。あるマシン上で特定のコンパイラを使用してビューを生成した場合、そのVIEWファイルを別のタイプのマシン上で使用することはできません。また、パディングやパッキングなど、生成される構造体オフセットが異なるコンパイラで使用することもできません。
-c
{ m
| b
}
m
です。Microsoft Cコンパイラがこのオプションの省略値です。-c
オプションはWindowsでのみサポートされます。
-1
filename
filename
.bat
という名前を付けます。このファイルが作られた後、パス2を実行する前にそれを実行する必要があります。パス1とパス2を使用すると、コンパイルできるVIEWのサイズを拡大できます。
-2
filename
『Oracle Tuxedo ATMI FML関数リファレンス』のFML関数の概要に関する項<Default ?Font>
『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
viewcs
、viewcs32
— 顧客定義のVIEWファイルであるTuxedo .NETワークステーション・クライアント・アプリケーション用のC#ソース・ファイルと.dllライブラリ・ファイルを生成
viewcs [binarydllfile] binaryviewfile [binaryviewfile...]
viewcs32 [binarydllfile] binaryviewfile [binaryviewfile...]
viewcs
は、カスタマ定義VIEWファイルのC#ソースと.dllライブラリ・ファイルを生成するために使用されるユーティリティです。viewc
出力ファイル(ファイル名の拡張子がDOS/Windowsでは.VV
、他のプラットフォームでは拡張子が.V
のバイナリVIEWファイル)を入力として、対応するC#ソースおよび.dllライブラリ・ファイル(カスタマ定義ビュー構造を表現するクラスを含む)を生成します。バイナリ.dll
ファイルが提供されない場合、dllライブラリ・ファイルは生成されません。
viewc
やviewc32
とは異なり、viewcs
およびviewcs32は環境変数に依存しません。必要とする唯一の入力は、コマンドラインで指定するバイナリのVIEWファイルです。
『Tuxedo .NETワークステーション・クライアントの使用』のTuxedo .NETワークステーション・クライアント・アプリケーションの作成に関する項<Default ?Font>
viewdis
、viewdis32
- バイナリVIEWファイル対応のVIEW逆アセンブラ
viewdis
viewobjfile . . . viewdis32 viewobjfile . . .
viewdis
はVIEWコンパイラが生成したVIEWオブジェクト・ファイルを逆アセンブルし、VIEWファイル形式でVIEW情報を表示します。また、対応する構造体メンバーのオフセットも表示します。
1つまたは複数のviewobjfiles
(接尾辞は.V
)をコマンドラインに指定できます。デフォルトの設定では、カレント・ディレクトリのviewobjfile
が逆アセンブルされます。これが見つからないと、エラー・メッセージが表示されます。
viewobjfile
にある情報は、フィールド表ファイルの情報を使用してVIEWファイルにあるフィールド識別子とフィールド名の整合により取得されたため、環境変数
FIELDTBLS
およびFLDTBLDIR
の設定およびエクスポートを行うことが重要になります。
viewdis
の出力は元のVIEW記述と同じように見え、主にコンパイル後のオブジェクトVIEW記述が正しいかどうかを検証するときに使用します。
viewdis32
は、32ビットのFMLで使用します。環境変数FIELDTBLS32
およびFLDTBLDIR32
を使用します。
『Oracle Tuxedo FMLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』<Default ?Font>
wlisten
- Oracle Tuxedo管理コンソール・リスナー・プロセス
wlisten [-i
initialization_file
]
wlisten
は、管理コンソールのアプレットからの着信接続を受信して、管理コンソールのゲートウェイ・プロセス(wgated
)を開始するリスナー・プロセスです。すべてのwlisten
オプションは、-i
オプションで指定される初期設定ファイルから取得されます。-i
オプションが指定されていない場合は、$TUXDIR/udataobj/webgui/webgui.ini
がデフォルトの初期化ファイルになります。初期化ファイルで使用できる形式とパラメータについては後で説明します。デフォルトの初期化ファイルは、システムのインストール時に生成されます。
wlisten
は、初期化ファイルにFOREGROUND=Y
パラメータが含まれていないかぎり、起動後はバックグラウンドで動作し、マシンが停止されるか、wlisten
プロセスがオペレーティング・システム・コマンドによって強制終了されるまで実行を継続します。
wlisten
では、次のコマンドライン・オプションを使用します。
-i
initialization_file
initialization_file
を、wlisten
で使用するように指定します。初期化ファイルの形式については後で説明します。初期化ファイルのパラメータのほとんどは、Oracle Tuxedoシステムのインストール時に妥当な値に設定されます。このオプションがコマンドラインに指定されていない場合、デフォルトの初期化ファイルの場所は$TUXDIR/udataobj/webgui/webgui.ini
になります。
-i
オプションで指定する初期化ファイルにはパラメータが含まれており、アプレット、wlisten
プロセス、およびゲートウェイ・プロセスはこれらのパラメータを使用して、管理コンソールの接続と以降の操作に必要な構成情報を調整することができます。
初期化ファイルのパラメータのほとんどは、Oracle Tuxedoシステムのインストール時に構成されます。また、管理コンソールの実行中、ユーザー入力に応じて、他のパラメータが自動的に追加されることもあります。たとえば、ドメインに接続すると、コンソールはそのドメインのリストを初期化ファイルに追加します。次回からは、プルダウン式「Domain」メニューを使用すると、そのドメインがリストされるようになります。このため、初期化ファイルを明示的に編集していないにもかかわらず、ファイルに行が追加されたり変更されることがあります。
初期化ファイルは、コメント行(空白行または#
文字が先頭にある行)とキーワード行から構成されます。キーワード行の形式はkeyword=value
です。次に、有効なキーワードとその値を示します。
TUXDIR=
directory
-i
オプションがwlisten
に指定されていない場合は、TUXDIR
を環境内で設定する必要があり、通常は初期化ファイルに指定されている値に設定します。
NADDR=
network_address
wlisten
で使用するネットワーク・アドレスを指定します。このパラメータにはデフォルト値はなく、値を割り当てる必要があります。IPv4ネットワーク・アドレスの形式は、tlisten
およびその他のOracle Tuxedoコマンドで使用する形式と同じです。詳細は、後述の「ネットワーク・アドレス」を参照してください。注意: | wlisten およびWebGUIは、IPv6をサポートしません。 |
DEVICE=
device
wlisten
で使用するネットワーク・デバイスを指定します。この変数はオプションです。バージョン6.4以前のリリースでは、ネットワーク・デバイスが選択されていないことを示す空文字列がデフォルト値に設定されています。Microsoft Windowsなどの一部のシステムでは、この設定が適切です。ここでは、tlisten
の-d
オプションに使用する値と同じ値を使用します。UNIXシステムによっては、 /dev/tcp
を指定する場合もあります。この値を割り当てるかどうかは、オペレーティング・システムによって異なります。
FOREGROUND=
[Y
| N
]
wlisten
をフォアグラウンドで実行する必要があるかどうかを指定します。デフォルト値はN
で、wlisten
は自動的にバックグラウンドで実行されます。このオプションは、テストとデバッグのみを目的として使用します。
WIDTH=
pixels
およびHEIGHT=
pixels
FRAMEWIDTH=
pixels
とFRAMEHEIGHT=
pixels
ENCRYPTBITS=
[0
| 40
]
0
で、暗号化を使用しません。40
オプションを選択すると、40ビットRC4暗号化が使用されます。この場合、tlisten
パスワード・ファイルが必要で、暗号化キーを交換するために認証を行う必要があります。
DOCBASE=
document_root
CODEBASE=
applet_root
SNAPDIR=
snapshot_directory
SNAPDIR
の値は、URLではなくフルパス名です。このパラメータはOracle Tuxedoシステムのインストール時に設定され、通常は以後この値を変更しません。このパラメータにデフォルト値はなく、初期化ファイルで値を割り当てる必要があります。
SNAPBASE=
http_root
SNAPBASE
の値は、フルパス名ではなくURLです。このパラメータはOracle Tuxedoシステムのインストール時に設定され、通常は以後この値を変更しません。このパラメータにデフォルト値はなく、初期化ファイルで値を割り当てる必要があります。
TEMPLATE=
template_path
%APPLET%
を単独で含める必要があります。ファイルの残りの部分は、通常は命令、ロゴまたは管理コンソールの管理者が使用するその他の情報を含む、標準のHTML形式ファイルでなければなりません。デフォルトのパス名は$TUXDIR/udataobj/webgui/webgui.html
です。
INIFILE=
init_file
NADDR
およびCODEBASE
パラメータと、様々なディレクトリ・パラメータを、同一の値に設定して、ENCRYPTBITS
パラメータの値が2つのファイル間で矛盾しないようにする必要があります。このように、2つのファイルが使用されるアプリケーションでは、1つのファイルのみが使用されるアプリケーションよりもエラーが発生しやすくなります。
FLDTBLDIR32=
field_table_dir
とFIELDTBLS32=
field_tables
wlisten
プロセスを正常に終了する唯一の方法は、プロセスにSIGTERM
シグナルを送ることです。
$TUXDIR/bin/wlisten -i
initialization_file
wlisten
プロセスを手動で開始するには、システム・プロンプトの後に上記のコマンドラインを入力します。APPDIR/.adm/tlisten.pw TUXDIR/udataobj/tlisten.pw
たとえば、wlisten
を実行しているローカル・マシンでTCP/IPアドレス指定機能を使用している場合を考えます。マシン名はbackus.company.com
で、アドレスは155.2.193.18
です。
また、wlisten
はポート番号2334
でリクエストを受け取るとします。
注意: | 一部のポート番号は、お使いのシステムで使用されるトランスポート・プロトコル(TCP/IPなど)のために予約されている場合があります。予約されているポート番号を確認するには、トランスポート・プロトコルのドキュメントを調べてください。 |
また、このポート番号2334
がbankapp-nlsaddr
という名前のネットワーク・サービス・データベースに追加されているとします。-l
オプションで指定するアドレスは、次に示す方法で表現できます。
最後に示す行は、アドレスを16進数形式で表したものです。0002
はTCP/IPアドレスの先頭部分、091E
はポート番号2334
を16進数に変換したもの、および9B02CU2
はIPアドレス155.2.193.18
の各要素を16進数に変換したものです。(最後の変換部分については、155
は9B
、2
は02
のように変換されています。)
STARLAN
ネットワークの場合は、通常、推奨アドレスuname
.wlisten
が一意の名前になります。