DB

本章では、データベースの現在の運用状態を表示または変更するコマンドの使用方法について説明します。OpenFrame AIM ADLのスキーマを使用して登録するOpenFrame NDBとADL XIFSCHEMAを使用して登録するNDB拡張索引がDB関連のAIMコマンドの対象となります。

また、RDBではエクステントとボリュームの区別が無意味であるため、構文チェックのみ実行され、エクステントとボリュームの運用情報は表示されません。

1. DISPLAY DB

DISPLAY DBコマンドは、データベースに対してリソースの名前と種類およびそのリソースの運用に関する現在の状態情報を表示します。EXTオペランドの場合は構文チェックのみ実行され、無視されます。

  • 使用方法

    -+-DISPLAY-+-DB-+--------------------------------------------------------------+-
     '-D-------'    '-,SCN=schema-name-+-----------------------------------------+-'
                                       '-,RGN=range-name-+---------------------+-'
                                                         '-,SRGN=subrange-name-'
    オペランド 説明

    SCN=schema-name

    運用情報を表示するスキーマ名を指定します。

    RGN=range-name, SRGN=subrange-name オペランドを指定せずに、SCN=schema-nameのみを指定すると、指定したスキーマに関連するすべての運用情報が表示されます。

    RDBでのエクステントは無意味であり、EXTオペランドは構文チェックのみ実行され無視されるため、DISPLAY DBコマンドではEXTの運用情報は表示されません。

    RGN=range-name

    特定のレンジに関連する運用情報を表示するためには、次のように対象となるレンジ名と、そのレンジを含むスキーマ名を指定する必要があります。

    形式:SCN=schema-name, RGN=range-name

    SRGN=subrange-name

    特定のサブレンジに関連する運用情報を表示するためには、次のように対象となるサブレンジ名と、そのサブレンジを含むレンジ名、スキーマ名を指定する必要があります。

    形式:SCN=schema-name、RGN=range-name、SRGN=subrange-name

    上記表のオペランドを指定せずに、DISPLAY DBコマンドのみを入力した場合は、AIMディレクトリに属する​​運用中のすべてのスキーマ情報が出力されます。

  • 出力リスト

    項目 説明

    K

    行の出力項目のリソースの種類を次のように表示します。

    • SCN : スキーマ

    • RNG : レンジ

    • SRG : サブレンジ

    NAME

    K項目の値に応じて、次のようにリソース名が出力されます。

    • KがSCNの場合 : スキーマ名

    • KがRNGの場合 : レンジ名

    • KがSRGの場合 : サブレンジ名

    TYPE

    スキーマの種類、データベースの常駐化情報を出力します。

    • KがSCNの場合、次のようなスキーマの詳細種類を表示します。(OpenFrameでは、次の項目のうち、VSAM、RDB、DS/*はサポートしていません。)

      • DB : AIMネットワーク・データベース (NDB)

      • XIF : 拡張索引

      • VSAM : AIM下のVSAMデータセット

      • RDB : リレーショナル・データベース (AIM/RDB)

      • DS/USR、DS/MSF、DS/WLD、DS/RLD、DS/XRF、DS/MUK、DS/LDE、DS/ACM

    • KがRNG、SRG、またはEXTの場合、次のようなデータベース常駐化情報を表示します。(OpenFrameでは常駐化をサポートしていません。)

      • RES / SSU / SS* / *** : 主記憶常駐の状態

    RSTD

    リソースの使用規定の状態を表示します。

    • APL : キーを使用したアプリケーション・レベルの規定が存在することを示します。

    • RCV : リカバリ関連の規定が存在することを示します。

    • NON : 別途の規定がないことを示します。

    • DAT / SYS / MOD / UTY / TSK / PPR : OpenFrameでは未対応

    KEY

    リソースに付与されたアプリケーション・レベルのキー値の情報を表示します。

    • 01 ~ 99 : アプリケーション・レベルのキー値の範囲を表示します。該当する範囲のキー値を持つアプリケーションのみがリソースを使用することができます。規定がない場合、値は表示されません。

    RCV

    リソースに対するリカバリ・レベルを表示します。規定がない場合、値は表示されません。

    • DWN : ダウン・リカバリ機能

    • CAN : キャンセル・リカバリ機能

    • FW : フォワード・リカバリ機能

    • BW : バックワード・リカバリ機能

    • NON : 上記のリカバリ機能を使用しない

    STATE

    閉塞の種類を表示します。OpenFrameでのINHIBIT情報は、DISPLAY DBERRで出力します。

    • INH

    • RST

    • AID

    • OER

    OpenFrameでは、INHのみサポートしています。これは、管理者がINHIBITコマンドを使用してエクステントを直接閉塞した場合に該当する閉塞です。

  • 使用例

    アプリケーション・レベルのキー値(KEY=99)が存在するデータベース・スキーマに対してDISPLAY DBコマンドを実行する例です。

    aimcmd -c 'DISPLAY DB,SCN=TSTSCH01'
    K   NAME         TYPE   RSTD     KEY    RCV              STATE
    ----------------------------------------------------------------
    SCN TSTSCH01     DB     APL      99-99                   NON
    RNG RANGE001     ----
    SRG SUBRNG0000   ----
    SRG SUBRNG0001   ----
    SRG SUBRNG0002   ----
    SRG SUBRNG0003   ----
    SRG SUBRNG0004   ----
    SRG SUBRNG0005   ----
    SRG SUBRNG0006   ----
    SRG SUBRNG0007   ----
    SRG SUBRNG0008   ----
    SRG SUBRNG0009   ----
    ----------------------------------------------------------------
    aimcmd: command execution done

    規定が存在しないスキーマに対してDISPLAY DBコマンドを実行する例です。

    aimcmd -c 'DISPLAY DB,SCN=TSTSCH01'
    K   NAME         TYPE   RSTD     KEY    RCV              STATE
    ----------------------------------------------------------------
    SCN TSTSCH01     DB     NON      NON                     NON
    RNG RANGE001     ----
    SRG SUBRNG0000   ----
    SRG SUBRNG0001   ----
    SRG SUBRNG0002   ----
    SRG SUBRNG0003   ----
    SRG SUBRNG0004   ----
    SRG SUBRNG0005   ----
    SRG SUBRNG0006   ----
    SRG SUBRNG0007   ----
    SRG SUBRNG0008   ----
    SRG SUBRNG0009   ----
    ----------------------------------------------------------------
    aimcmd: command execution done

2. DISPLAY DBERR

障害およびリカバリ情報が存在するスキーマ・エクステントの状態を表示します。

富士通メインフレームAIMのDISPLAY DBERRコマンドの出力情報には、障害閉塞(アクセス禁止)の原因、記憶媒体上のブロック単位の閉塞範囲、障害エクステントの状態とリカバリ情報およびリカバリの詳細情報が含まれます。

一方、OpenFrame AIMとOpenFrame NDBは、記憶媒体であるDASDを直接操作するのではなく、RDBで実装したものであるため、詳細情報やそれに基づいたリカバリの方法は、ホストの富士通AIMとは異なります。ただし、実際に障害が発生したのではなく、管理者がINHIBIT DBコマンドおよびPERMIT DBコマンドを直接入力して意図的にデータベースを閉塞した場合にも、DISPLAY DBERRコマンドを使用して調べることができるため、それに該当する情報を表示する機能に限ってサポートしています。たとえば、DVOLオペランドの場合は、構文チェックのみ実行され無視されるため、DISPLAY DBERRコマンドでDVOLの運用情報は表示されません。

  • 使用方法

    -+-DISPLAY-+-DBERR-+---------------------+-
     '-D-------'
  • 出力リスト

    DISPLAY DBコマンドの出力リストと重複する項目については簡単に説明します。詳細については、DISPLAY DBを参照してください。

    次に、DISPLAY DBERRコマンドでのみ出力される項目について説明します。

    項目 説明

    K

    項目区分を表示します。

    NAME

    リソース名を表示します。

    TYPE

    スキーマの種類とデータベースの常駐化情報を表示します。

    RSTD

    リソースの使用規定の状態を表示します。

    KEY

    リソースに付与されたアプリケーション・レベルのキー値の情報を表示します。

    RCV

    リソースに対するリカバリ・レベルを表示します。

    STATE

    閉塞の種類を表示します。

    • INH

    • RST

    • AID

    • OER

    OpenFrameでは、INHのみサポートしています。これは、管理者がINHIBITコマンドを使用してエクステントを直接閉塞した場合に該当する閉塞です。

  • 使用例

    次は、障害エクステントが存在しない場合にDISPLAY DBERRコマンドを実行した例です。

    aimcmd -c 'DISPLAY DBERR'
    K   NAME         TYPE   STATE
    ---------------------------------
    DB information does not exist.
    ---------------------------------
    aimcmd: command execution done

    次は、スキーマに障害が発生したエクステントが存在する場合にDISPLAY DBERRコマンドを実行した例です。

    aimcmd -c 'DISPLAY DBERR'
    K   NAME         TYPE   STATE
    ---------------------------------
    PDB RDBPDB01     RDB    INHIBITED
    SCN TSTLOC01     DB     INHIBITED
    ---------------------------------
    aimcmd: command execution done

3. DISPLAY RSTRCTDB

アプリケーション・レベルのキー値またはリカバリ・レベルの規定が存在するデータベース、RDBIIデータセット、一般データセット(非VSAM、VSAM)に対して、詳しい規定情報が含まれたデータベースの情報を表示します。規定の種類には、KEY、DATL、RCVL、MONO、MOD、UTY、TASK, PPRがあります。OpenFrameでは、KEYとRCVLのみサポートしています。

  • 使用方法

    -+-DISPLAY-+-RSTRCTDB-+-,KIND=+-KEY--+-
     '-D-------'                  |-RCVL-|
                                  '-ALL--'
    オペランド 説明

    KIND={KEY|RCVL|ALL}

    出力する規定の種類を指定します。

    KINDには、KEY、RCVL、ALLのいずれかを指定する必要があり、省略できません。

  • 出力リスト

    DISPLAY DBコマンドの出力リストと重複する項目については簡単に説明します。詳細については、DISPLAY DBを参照してください。

    次に、DISPLAY RSTRCTDBコマンドでのみ出力される項目について説明します。

    項目 説明

    K

    項目区分を表示します。

    NAME

    リソース名を表示します。

    TYPE

    規定が存在するスキーマの種類を表示します。

    RSTD

    リソースの使用規定の状態を表示します。

    KEY

    アプリケーション・レベルのキー値の範囲(01~99)を表示します。

    RESTRICT DBコマンドによって付与されたキーの規定が存在しており、このコマンドのオペランドであるKINDにKEYまたはALLを指定した場合に出力されます。規定キーの「最小値-最大値」形式で出力されます。

    RCVL

    RESTRICT DBコマンドによって付与されたリカバリ・レベルの規定が存在しており、このコマンドのオペランドであるKINDにRCVLまたはALLを指定した場合に出力されます。

    付与された規定が複数存在する場合は、同じ行にコンマ(,)で区切られて出力されます。

    STATE

    閉塞の種類を表示します。

  • 使用例

    次は、アプリケーション・レベルのキー値とリカバリ・レベルの規定が設定されたデータベースが存在する場合に、KIND=ALLを指定したDISPLAY RSTRCTDBコマンドを実行した例です。

    aimcmd -c 'DISPLAY RSTRCTDB,KIND=ALL'
    K   NAME         TYPE   RSTD     KEY    RCV              STATE
    ----------------------------------------------------------------
    SCN TSTSCH01     DB     APL      99-99                   NON
    SCN TSTSCH03     DB     RCV      NON    FW,BW            NON
    SCN TSTSCHNV     NVSM   RCV      NON    FW               NON
    SCN TSTSCHVS     VSAM   RCV      NON    NON              NON
    MDB RDBIIMDB     RDB    RCV      NON    NON              NON
    ----------------------------------------------------------------
    aimcmd: command execution done

    次は、アプリケーション・レベルのキー値が設定されたデータベースが存在する場合に、KIND=KEYを指定したDISPLAY RSTRCTDBコマンドを実行した例です。

    aimcmd -c 'DISPLAY RSTRCTDB,KIND=KEY'
    aimcmd: command [DISPLAY RSTRCTDB,KIND=KEY] input
    K   NAME         TYPE   RSTD     KEY    RCV              STATE
    ----------------------------------------------------------------
    SCN TSTSCH01     DB     APL      99-99                   NON
    ----------------------------------------------------------------
    aimcmd: command execution done

    次は、アプリケーションのリカバリ・レベルの規定が設定されたデータベースが存在する場合に、KIND=RCVLを指定したDISPLAY RSTRCTDBコマンドを実行した例です。

    aimcmd -c 'DISPLAY RSTRCTDB,KIND=RCVL'
    aimcmd: command [DISPLAY RSTRCTDB,KIND=RCVL] input
    K   NAME         TYPE   RSTD     KEY    RCV              STATE
    ----------------------------------------------------------------
    SCN TSTSCH03     DB     RCV      NON    FW,BW            NON
    SCN TSTSCHNV     NVSM   RCV      NON    FW               NON
    SCN TSTSCHVS     VSAM   RCV      NON    NON              NON
    MDB RDBIIMDB     RDB    RCV      NON    NON              NON
    ----------------------------------------------------------------
    aimcmd: command execution done

4. INHIBIT DB

INHIBIT DBコマンドは、データベースおよびデータセットのアクセスを禁止します。このコマンドによってアクセスが禁止されたリソースにアクセスするアプリケーションに対して、入出力エラーが発生したことを通知します。

INHIBIT DBコマンドによって閉塞されたエクステントは、DISPLAY DBERRコマンドでSTATEがINHIBITと表示されます。

  • 使用方法

    -+-INHIBIT-+-DB-+-+,SCN=schema-name------+-
     '-INH-----'
    オペランド 説明

    SCN=schema-name

    閉塞するスキーマ名を指定します。

    指定されたスキーマのすべてのエクステントが閉塞の対象となります。

    RDBで無効なDVOL、MODE、EXTオペランドは、構文チェックのみ実行され無視されるため、INHIBIT DBコマンドでは運用情報が表示されません。

  • 使用例

    INHIBIT DBは、運用状態を変更するコマンドであり、コマンドの実行が成功したかどうかを示すメッセージジのみ表示されます。

    次は、TSTSCH01スキーマのすべてのエクステントを閉塞するためのINHIBIT DBコマンドです。

    aimcmd -c 'INHIBIT DB,SCN=TSTSCH01'

5. PERMIT DB

INHIBIT DBコマンドによって閉塞(アクセス禁止)されたエクステントをスキーマ単位で閉塞を解除します。

  • 使用方法

    -+-PERMIT-+-DB-+-+,SCN=schema-name---------+-
     '-PMT----'
    オペランド 説明

    SCN=schema-name

    閉塞を解除するスキーマ名を指定します。

    EXTオペランドを追加で記述しない場合、指定したスキーマのすべてのエクステントが閉塞解除の対象となります。

    RDBで無意味なDVOL、MODE、EXTオペランドは、構文チェックのみ実行され無視されるため、INHIBIT DBコマンドでは運用情報が表示されません。

  • 使用例

    PERMIT DBコマンドは、運用状態を変更するコマンドであり、コマンドの実行が成功したかどうかを示すメッセージジのみ表示されます。

    次は、TSTSCH01スキーマのすべてのエクステントを閉塞するためのPERMIT DBコマンドです。

    aimcmd -c 'PERMIT DB,SCN=TSTSCH01'

6. RESTRICT DB

RESTRICT DBコマンドは、データベースに対してアプリケーション・レベルのキー値およびリカバリ・レベルの規定をスキーマ単位で付与します。

アプリケーション・レベルのキー値の規定は、DB/DSリソースにキー値を設定してアクセス可能なアプリケーションを制限します。つまり、リソースのキー値と一致するキーを持つアプリケーションにのみリソースへのアクセスを許可します。

リカバリ・レベルの規定は、DB/DSリソースに必要なリカバリ機能を設定し、そのリカバリ・レベルと一致するリカバリ・レベルを持つアプリケーションにのみDB/DSリソースへのアクセスを許可します。

  • 使用方法

    -+-RESTRICT-+-DB-+-,SCN=schema-name-+-,KEY=-+-key-value--------------+-
     '-RSTR-----'                       |       |-(key-value1,key-value2)-|
                                        '-,RCVL=(recovery-function-names)-'
    オペランド 説明

    SCN=schema-name

    スキーマ単位で規定を設定する場合、スキーマ名を指定します

    KEY=key-val|(key-val1,key-val2)

    アプリケーションのキー値を指定します。

    単一のキー値を指定する場合は、1〜99までの値を指定します。キー値の範囲を指定する場合は、1〜99までのキー値の範囲を(key-val1、key-val2)のように括弧で囲んで指定します。key-val1の値は、key-val2の値より小さい値を指定する必要があります。

    RCVL=(recovery-function-name)

    リカバリ・レベルの規定を設定します。リカバリ機能の名前(recovery-function-name)は、次の5つの機能を組み合わせて指定することができます。

    • DWN : ダウン・リカバリ機能

    • CAN : キャンセル・リカバリ機能

    • FW : フォワード・リカバリ機能

    • BW : バックワード・リカバリ機能

    • NOTUSED : リカバリ機能を使用しない

    リカバリ機能を複数指定する場合は、(リカバリ機能1、リカバリ機能2、...)のようにコンマ(、)で区切って指定します。

  • 使用例

    RESTRICT DBは、運用状態を変更するコマンドであり、コマンドの実行が成功したかどうかを示すメッセージジのみ表示されます。

    次は、RESTRICT DBコマンドを使用して、TSTSCH01スキーマに単一のキー値(99)を設定する例です。

    aimcmd -c 'RESTRICT DB,SCN=TSTSCH01,KEY=99'

    次は、RESTRICT DBコマンドを使用して、TSTSCH01スキーマにキー値の範囲(10~50)を設定する例です。

    aimcmd -c 'RESTRICT DB,SCN=TSTSCH01,KEY=(1,50)'

    次は、RESTRICT DBコマンドを使用して、TSTSCH01スキーマにリカバリ機能を使用しない規定を設定する例です。

    aimcmd -c 'RESTRICT DB,SCN=TSTSCH01,RCVL=(NOTUSED)'

    次は、RESTRICT DBコマンドを使用して、TSTSCH01スキーマにリカバリ・レベルの規定としてDWN機能とCAN機能を設定する例です。

    aimcmd -c 'RESTRICT DB,SCN=TSTSCH01,RCVL=(DWN,CAN)'

    すでに規定が設定されているTSTSCH01スキーマに、もう一度RESTRICT DBコマンドを実行すると、次のメッセージが表示されます。

    [2019-11-26T20:51:46] [M] [NRD0001M] The TSTLOC01 schema is already restricted/inhibited
    aimcmd: command execution done

7. RELEASE DB

RELEASE DBコマンドは、RESTRICT DBコマンドによってリソースに設定された規定を解除します。

  • 使用方法

    -+-RELEASE-+-DB-+-,SCN=schema-name-+-,TYPE=-+-KEY--+-
     '-RLS-----'                                '-RCVL-'
    オペランド 説明

    SCN=schema-name

    スキーマ単位で規定を解除する場合、スキーマ名を指定します。

    TYPE={KEY|RCVL}

    解除する規定のタイプを指定します。

    • TYPE=KEYを指定すると、アプリケーションのキー値の規定を解除します。

    • TYPE=RCVLを指定すると、リカバリ・レベルの規定を解除します。

    TYPEを指定しない場合は、指定されているアプリケーションのキー値およびリカバリ・レベルの規定をすべて解除します。

  • 使用例

    RELEASE DBは、運用状態を変更するコマンドであり、コマンドの実行が成功したかどうかを示すメッセージジのみ表示されます。

    次は、RELEASE DBコマンドを使用して、TSTSCH01スキーマに設定されたアプリケーション・キーの規定を解除する例です。

    aimcmd -c 'RELEASE DB,SCN=TSTSCH01,TYPE=KEY'

    次は、RELEASE DBコマンドを使用して、TSTSCH01スキーマに設定されたリカバリ・レベルの規定を解除する例です。

    aimcmd -c 'RELEASE DB,SCN=TSTSCH01,TYPE=RCVL'

    次は、RELEASE DBコマンドを使用して、TSTSCH01スキーマに設定されたアプリケーションのすべての規定を解除する例です。

    aimcmd -c 'RELEASE DB,SCN=TSTSCH01'

    規定が設定されていないTSTSCH01スキーマにRELEASE DBコマンドを実行すると、次のメッセージが表示されます。

    [2019-11-26T20:59:57] [M] [NRD0002M] There is no restrict/inhibit db info - schema=TSTSCH01
    aimcmd: command execution done