この章では、Adabas 拡張オペレーション(AEO)で一般的に使用するコマンドについて説明します。
使用法:adaini [DBID=<dbid>] {<add> | <del> | <show>}
<dbid> は、0~255 の範囲の数値です。DBID パラメータが指定されていない場合、または DBID=0 が指定されている場合は、ADABAS.INI ファイルが処理されます。それ以外の場合は、DB<dbid>.INI ファイルが処理されます。
<add> は、コンフィグレーションファイルに 1 つ以上の項目を追加または変更する際に使用します。構文は次のとおりです。
{ADD | MOD[IFY] } <topic_list> <item_value_list>
注意:
ADD と MOD[IFY] は同じです。ADD を使用して項目を変更することも、MOD[IFY] を使用して項目を追加することもできます。
<topic_list> の構文は次のとおりです。
{ TOPIC=<topic> } ...
ここで、<topic> はトピックの名前です。処理する項目がサブトピックに属している場合は、その項目が属しているトピックの完全な階層を指定する必要があります。
注意:
トピック名は大文字に変換されます。
<item_value_list> の構文は次のとおりです。
{ITEM=<item>[=<value>] } ...
ここで、<item> は項目の名前で、<value> は項目の値です。
注意:
adaini mod topic=node_parameter topic=analyser item=ACTION=no
このコマンドで、トピック NODE_PARAMETER、サブトピック ANALYSER の項目 ACTION が no に設定され、その結果 AEO が非アクティブ化されます。
<del> は、コンフィグレーションファイルから 1 つ以上の項目を削除する際に使用します。構文は次のとおりです。
DEL[ETE] <topic_list> <item_list>
<topic_list> は、<add> の場合と同じ方法で使用されます。
<item_list> の構文は次のとおりです。
{ITEM= *} | {ITEM = <item>} ...
ここで、<item> は項目の名前です。指定した項目が削除されます。「*」を指定すると、すべての項目とその項目が属しているトピックが削除されます。
注意:
adaini dbid=36 del topic=environment item=ADAHYX_4
このコマンドは ADAHYX_4 の環境設定を削除し、ハイパー出口 4 を非アクティブ化します。
<show> は、コンフィグレーションファイルに格納されている 1 つ以上の項目を表示する際に使用します。構文は次のとおりです。
show [<format>] <topic_list> [<item_list>]
<format> の構文は次のとおりです。
FORMAT={ BAT | BSH | CMD | CSH}
FORMAT を指定した場合、指定したシェルのステートメントが生成されます。これにより環境変数が作成されますが、その名前は処理する項目名になり、その値は項目の値になります。
<topic_list> は、<add> の場合と同じ方法で使用されます。
<item_list> の構文は <del> と同じです。ITEM=* を指定した場合は、指定したトピックに属しているすべての項目が表示されます。<format> が指定されていない場合、これらは <item>=<value> のフォーマットで表示され、その後に改行が続きます。項目を名前で明示的に指定した場合は、これらの項目が表示されます。<format> が指定されていない場合は、項目の値のみが表示され、その後に改行が続きます。
<item_list> が指定されていない場合は、トピックに属しているすべての項目が表示されます。フォーマットが指定されていない場合、これらは <item>=<value> のフォーマットで表示されます。サブトピックも表示されます。以下の例にレイアウトを示します。
このコマンドは、
adaini show topic=db_list
次の出力を生成する場合があります。
[DBID_001] INI_FILE=C:\Program Files\Software AG\Adabas\db001\DB001.INI NAME=V33-DATABASE STRLVL=12 [DBID_001-END] [DBID_002] AUTOSTART=V616 INI_FILE=C:\Program Files\Software AG\Adabas\db002\DB002.INI NAME=P289591 STRLVL=12 [DBID_002-END] [DBID_003] INI_FILE=C:\Program Files\Software AG\Adabas\db003\DB003.INI NAME=DEFAULT-DATABASE STRLVL=15 [DBID_003-END] [DBID_004] INI_FILE=C:\Program Files\Software AG\Adabas\db004\DB004.INI NAME=TEST-ICU STRLVL=15 [DBID_004-END] [DBID_005] INI_FILE=C:\Program Files\Software AG\Adabas\db005\DB005.INI NAME=ADA618-DB STRLVL=15 [DBID_005-END] [DBID_012] INI_FILE=C:\Program Files\Software AG\Adabas\db012\DB012.INI NAME=GENERAL_DATABASE STRLVL=15 [DBID_012-END] [DBID_036] AUTOSTART=NO INI_FILE=C:\Program Files\Software AG\Adabas\db036\DB036.INI NAME=GENERAL_DATABASE STRLVL=15 [DBID_036-END] [DBID_062] AUTOSTART=NO INI_FILE=C:\Program Files\Software AG\Adabas\db062\DB062.INI NAME=GENERAL_DATABASE STRLVL=16 [DBID_062-END]
このコマンドは、
adaini dbid=36 show format=bat topic=backup item=BCK001 item=BCK002 item=BCK003
次の出力を生成する場合があります。
set BCK001=C:\Program Files\Software AG\Adabas\db036\BCK001.036 set BCK002=C:\Program Files\Software AG\Adabas\db036\BCK002.036 set BCK003=C:\Program Files\Software AG\Adabas\db036\BCK003.036
用途:adainst <dbid>
<dbid> が欠落し、ADABAS.INI が %ADADATADIR%\etc
に存在しない場合、adainst は、%ADADATADIR%\etc\ADABAS.INI
を作成します。
このスクリプトにより、次の手順が実行されます。
ディレクトリ %ADADATADIR%\etc
の作成
まだ存在しない場合は、テンプレートファイル %ADAPROGDIR%\ADABAS.INI
を %ADADATADIR%\etc\ADABAS.INI
にコピーします。
%ADADATADIR%\etc\ADABAS.INI
がすでに存在している場合、それにトピック NODE_PARAMETER と、DB_DEFAULTS トピックの DB_PARAMETER サブトピックがすでに含まれているかどうかをチェックします。含まれていない場合、テンプレートからコピーします。
必要に応じて次の値を代用します。
トピック MISCELLANEOUS の NODE_NAME
トピック NODE_PARAMETERS 内のサブトピック LOGGING の LOG_FILE
<dbid> が指定されていて、かつトピック DBID_<dbid> が ADABAS.INI に存在しない場合、adainst は %ADADATADIR%\db<dbid>\DB<dbid>.INI
を作成します。このスクリプトにより、次の手順が実行されます。
ADABAS.INI からトピック DB_DEFAULTS を読み取り、それを DB<dbid>.INI にコピーします。
ディレクトリ %ADADATADIR%\db<dbid>
内の assign.*sh および adanuc.*sh ファイルを検索し、コンテナ定義をトピック CONTAINER にコピーします。
ディレクトリ %ADADATADIR%\db<dbid>
内の adanuc.*sh ファイルを検索し、ニュークリアスパラメータをトピック NUCPARMS にコピーします。
トピック ACTION_DBA 内のユーザー名を問い合わせます。
有効/無効のアクションを表示します。
adarep
dbid=<dbid>summary
を使って、データベース名を取得し、項目 NAME を ADABAS.INI のトピック DBID_<dbid> に挿入します。
用途:adainst <dbid>
<dbid> が欠落し、ADABAS.INI が $ADADATADIR/etc
に存在しない場合、adainst は、$ADADATADIR/etc/ADABAS.INI
を作成します。
このスクリプトにより、次の手順が実行されます。
ディレクトリ $ADADATADIR/etc
の作成
まだ存在しない場合は、テンプレートファイル $ADAPROGDIR/ADABAS.INI
を $ADADATADIR/etc/ADABAS.INI
にコピーします。
$ADADATADIR/etc/ADABAS.INI
がすでに存在している場合、それにトピック NODE_PARAMETER と、DB_DEFAULTS トピックの DB_PARAMETER サブトピックがすでに含まれているかどうかをチェックします。含まれていない場合、テンプレートからコピーします。
コピー先ファイルで次の値を置き換えます。
トピック MISCELLANEOUS の NODE_NAME
トピック LOGGING(NODE_PARAMETER)内の LOG_FILE
<dbid> が指定されていて、かつトピック DBID_<dbid> が ADABAS.INI に存在しない場合、adainst は $ADADATADIR/db<dbid>/DB<dbid>.INI
を作成します。このスクリプトにより、次の手順が実行されます。
ADABAS.INI からトピック DB_DEFAULTS を読み取り、それを DB<dbid>.INI にコピーします。
ディレクトリ $ADADATADIR/db<dbid>
内の assign.*sh および adanuc.*sh ファイルを検索し、コンテナ定義をトピック CONTAINER にコピーします。
ディレクトリ $ADADATADIR/db<dbid>
内の adanuc.*sh ファイルを検索し、ニュークリアスパラメータをトピック NUCPARMS にコピーします。
トピック ACTION_DBA 内のユーザー名を問い合わせます。
有効/無効のアクションを表示します。
adarep
dbid=<dbid>summary
を使って、データベース名を取得し、項目 NAME を ADABAS.INI のトピック DBID_<dbid> に挿入します。
使用法:adakill <dbid>
adakill はデータベース <dbid> の Adabas ニュークリアスを次のように停止します。
PC プラットフォーム:割り込み(CTRL/BREAK)の送信による停止。<dbid> パラメータは必須です。
UNIX:UNIX シグナル 15 で停止。<dbid> パラメータは必須です。
注意: このコマンドは、ABORT オプションを指定した adastop がニュークリアスを停止できない場合以外は使わないでください。Adabas はメモリダンプを出力し、次回の起動時に自動再スタートを行います。 |
このスクリプトコマンドは、次の手順を行います。
adanuc のプロセス ID を取得します。
割り込みを送信します。
使用法:adalog [<dbid>] [-t]
adalog は Adabas ログファイルを表示します。
<dbid> を指定した場合、このデータベースの全エントリを表示します。<dbid> を指定しない場合、すべてのデータベースのエントリを表示します。オプション -t を指定すると、adalog はログファイルの最後の行を表示し、ログファイルに新しい行が書き加えられるつれて、その行に続けて表示していきます。
使用法:adamsg DBID=<dbid> PID=<プロセス ID> UTILITY=<ユーティリティ名> MESSAGE=<メッセージ ID> TEXT=<メッセージテキスト>
次のメッセージ ID をサポートします。
ABORTED
TEXT には、このメッセージ ID に応じた異常終了の原因が出力されます。
INCNUCP
TEXT には、このメッセージ ID に応じた、nucleus parameter=<パラメータ>、current size=<現在のサイズ>、new size=<新サイズ> が出力されます。このオプションはアクション ada_inuc(ニュークリアスパラメータの増加)で使います。
INP
TEXT には、このメッセージ ID に応じたパラメータ割り当てが出力されます。
STARTED
このメッセージ ID では、TEXT は空白です。
TERMINATED
このメッセージ ID では、TEXT は空白です。
adamsg はバッチファイルから Adabas ログファイルへのインターフェイスです。すべてのバッチファイル(AEO アクションと同様に)は、ログメッセージに対してこのインターフェイスを使うことができます。TEXT パラメータは必ずパラメータリストの最後にすることを除けば、パラメータの順番は任意です。TEXT パラメータ値以外のすべてのパラメータ値は大文字に変換されます。
adamsg DBID=77 PID=4711 UTILITY=my_uti MESSAGE=ABORTED TEXT=file abc is empty
ログファイルの最後に次のメッセージ行を生成します。
004711 <date + time> 00077 <user name> %my_uti-F-ABORTED, file abc is empty
さらに、現在のユーザー ID(有効な場合)が ACTION_DBA トピックに挿入されます。
使用法(PC プラットフォームの場合):[CALL] adaset <dbid>
使用法(UNIX):adaset <dbid>
adaset は次の環境変数を定義します。
ADADBID=<dbid>(これは、デフォルトのデータベース ID です)
(PC プラットフォーム:)ADADBDIR=%ADADATADIR%\db<dbid>
(UNIX:)ADADBDIR=$ADADATADIR/db<dbid>(これは、デフォルトデータベースのデータベースワーキングディレクトリです)。
さらに、adaset は次のように PATH 変数を次のように拡張します。
PATH=%ADAPROGDIR%;%ADAPROGDIR%\tools;%PATH%
adaset が、コマンドプロンプトからではなくバッチファイルから実行されるときは、CALL コマンドを使用しなければならないことに注意してください。
さらに、adaset は次のように PATH 変数を次のように拡張します。
PATH=$ADAPROGDIR:$ADAPROGDIR/tools:$PATH
C シェル環境では、adaset は adaset.csh のコールによって作成されるエイリアスです。Bourne シェル環境では、adaset は adaset.bsh のコールによって作成される機能です。adaset を使う前に、次のコマンドのいずれかを発行する必要があります。
. $ADATOOLS/adaset.bsh (Bourne shell) source $ADATOOLS/adaset.csh (C shell)
これらのステートメントは、adaenv.bsh(Bourne シェル)または adaenv.csh(C シェル)によってすでに実行されています。
使用法:adashow [<dbid>] [-a]
adashow はデータベース <dbid> の次の情報を表示します。
データベース ID:ADADBID によって指定された値
名前:トピック DBID_<ADADBID の値> 内の NAME
バージョン:廃止
コンフィグレーションファイル:トピック DBID_<ADADBID の値> 内の INI_FILE
ステータス:ONLINE、OFFLINE、ERROR のいずれか
<dbid> がない場合、adashow は、環境変数 $ADADBID に指定されたデフォルトのデータベースの情報を表示します。
オプション -a を指定すると、adashow は Adabas.INI 内の DB_LIST セクションにある、このノード上に構成された Adabas データベースすべてのデータベース ID、名前、バージョン、ステータスを表示します。
使用法:adastart [<dbid>]
adastart は Adabas データベース <dbid> を開始します。最初にコールされたときにニュークリアスログファイル adanuc.log, が作成され、後続のコールでニュークリアスログがタイムスタンプとともに保存されます(adanuc.log.timestamp)。
このスクリプトにより、次の手順が実行されます。
ニュークリアスがすでにオンラインかどうか調べます。
Adabas という名前のユーティリティを使用してニュークリアスを開始します。これは DB<dbid>.INI からパラメータを読み込みます。
ニュークリアスがオンラインになるか、または Adabas エラーが発生するまで待機します。
このスクリプトにより、次の手順が実行されます。
DB<dbid>.INI からニュークリアスパラメータを読み、ファイル $ADADBDIR\nucparms.<dbid> に書き出します。
ニュークリアスがすでにオンラインかどうか調べます。
環境変数 ADANUCLOGOLD が "COPY" として定義されていて、前のセッションのニュークリアスログが存在する場合(ファイル名 $ADADATADIR/db<dbid>/adanuc.log)、ニュークリアスログが $ADADATADIR/db<dbid>/adanuc.log.old にコピーされます。
環境変数 ADANUCLOGOLD が "APPEND" として定義されていて、前のセッションのニュークリアスログが存在する場合(ファイル名 $ADADATADIR/db<dbid>/adanuc.log)、ニュークリアスログが $ADADATADIR/db<dbid>/adanuc.log.old に追加されます。
パラメータファイル $ADADBDIR/nucparms.<dbid> を使ってニュークリアスを開始します。
ニュークリアスがオンラインになるか、または Adabas エラーが発生するまで待機します。
使用法:adastop [<dbid>]
adastop はデータベース <dbid> を停止します。<dbid> がない場合には、adastop は環境変数 ADADBID によって指定されたデフォルトのデータベースを停止します。
このスクリプトにより、次の手順が実行されます。
ニュークリアスがオンラインかオフラインか調べます。
DB<dbid>.INI からトピック定義 TERMINATE_ADANUC を読みます。
トピック内に定義されているシャットダウンオプションを受け取り、定義されている時間の間、ニュークリアスの停止を待機します。