DATABASE_MONITOR_INFO ビュー
DATABASE_MONITOR_INFO ビューは、サーバー上のデータベース・モニターおよびプラン・キャッシュ・イベント・モニターに関する情報を返します。データベース・モニターは、データベース・モニターの開始 (STRDBMON) コマンドを使用して開始されます。 QSYS2.START_PLAN_CACHE_EVENT_MONITOR プロシージャーは、プラン・キャッシュ・イベント・モニターを開始するために使用されます。IBM i ナビゲーター内の SQL パフォーマンス・モニターは、データベースのモニターと同義であり、このビューに含まれています。
次の表は、ビューの列について説明しています。 システム名は DBMON_INFO です。スキーマは QSYS2 です。
列名 | システム列名 | データ・タイプ | 説明 |
---|---|---|---|
MONITOR_ID | MONITOR_ID | CHAR(10) | このモニターの、システムで割り当てられたモニター ID。 |
MONITOR_TYPE | MONTYPE | VARCHAR(7) | モニターのタイプ。
|
MONITOR_STATUS | STATUS | VARCHAR(8) | このモニターの状況。
|
MONITOR_RECORD_TYPE | RCDTYPE | VARCHAR(6) | このモニターのデータベース・レコードのタイプ。
|
MONITOR_LIBRARY | MONLIB | VARCHAR(10) | このモニターのライブラリー。 |
MONITOR_FILE | MONFILE | VARCHAR(10) | このモニターのデータベース・アクティビティー詳細が描き込まれるファイル。 |
MONITOR_MEMBER | MONMBR | VARCHAR(10) | このモニターのメンバー。 |
IASP_NUMBER | IASPNUMBER | SMALLINT | モニター・ファイルの独立補助記憶域プール (IASP) 番号。 |
MONITOR_MEMBER_OPTION | MBROPT | VARCHAR(7)
NULL 可能 |
このモニターが最後に開始されたときにメンバー置き換えオプションに使用された値。
EVENT モニターの場合は、NULL 値が入ります。 |
NUMBER_ROWS | CARD | BIGINT NULL 可能 |
データベース・モニター・ファイル内の行の数。 情報が使用可能でない場合は、NULL 値が入ります。 |
DATA_SIZE | SIZE | BIGINT NULL 可能 |
データベース・モニター・ファイルの合計サイズ (バイト単位)。 情報が使用可能でない場合は、NULL 値が入ります。 |
MONITOR_JOB_FILTER | JOB | VARCHAR(32) | このモニターの修飾ジョブ名。
EVENT モニターの場合、これは、モニターを開始したジョブです。修飾ジョブ名の後は、ジョブ名に適用されるフィルター演算子です。これは *EQ または *NE です。 特殊値*ALL は、システム上のすべてのジョブがモニターされていることを示します。ジョブ名とユーザー名の両方に総称が許可されます。 |
HOST_VARIABLE | HOSTVAR | VARCHAR(9)
NULL 可能 |
このデータベース・モニターでホスト変数がどのように処理されるのか。
EVENT モニターの場合は、NULL 値が入ります。 |
FORCE_RECORDS | FRCRCD | SMALLINT NULL 可能 |
専用モニターでの実行時にファイルにレコードが強制的に書き出される前にバッファーに保持するレコードの数。 システムが値を計算する場合、または EVENT モニターの場合は、NULL 値が入ります。 |
RUN_THRESHOLD_FILTER | RUNTHLD | INTEGER NULL 可能 |
このモニターの SQL ステートメントの推定実行時間に基づいた、秒単位のフィルターしきい値。 フィルターに実行時間しきい値が使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
STORAGE_THRESHOLD_FILTER | STGTHLD | INTEGER NULL 可能 |
このモニターの SQL ステートメントの推定一時記憶域使用量に基づいた、フィルターしきい値 (メガバイト単位)。 フィルターに一時しきい値が使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
INCLUDE_SYSTEM_SQL | INCSYSSQL | VARCHAR(3) | モニターには、システム生成の SQL ステートメントのレコードが含まれます。
|
FILE_FILTER | FTRFILE | VARCHAR(2728) NULL 可能 |
フィルターに使用されている最大 10 個の修飾ファイル参照のリスト。各ファイル名の後は、ファイル名に適用されるフィルター演算子です。これは *EQ または *NE です。複数のファイルがリストされている場合、コンマと単一ブランクで項目が区切られます。ファイル名またはライブラリー名のいずれかを総称にすることができます。 ファイル名の特殊値 *ALL は、ライブラリー内のすべてのファイルを示します。 フィルターに使用されるデータベース・ファイルがない場合は、NULL 値が入ります。 |
USER_FILTER | FTRUSER | VARCHAR(158) NULL 可能 |
フィルターに使用されている最大 10 個のユーザー・プロファイルのリスト。各ユーザー・プロファイル名の後は、ユーザー・プロファイルに適用されるフィルター演算子です。これは *EQ または *NE です。複数のプロファイルがリストされている場合、コンマと単一ブランクで項目が区切られます。プロファイル名は総称にできます。 フィルターでユーザー・プロファイルが使用されない場合は、NULL 値が入ります。 |
TCPIP_FILTER | FTRINTNETA | VARCHAR(254) NULL 可能 |
TCP/IP アドレスまたはホスト名がフィルターに使用されます。 これは IPv4、IPv6、または IP ホスト・ドメイン名、あるいは特殊値 *LOCAL です。 フィルターに TCP/IP アドレスおよびホスト名が使用されていない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
LOCAL_PORT_FILTER | FTRLCLPORT | INTEGER NULL 可能 |
フィルターは、ローカル TCP/IP ポート番号に基づいて行われます。モニター・レコードは,指定されたローカルTCP/IPポートのために実行しているTCP/IPデータベース・サーバー・ジョブに対して作成されます。
QRWTSRVRおよびQZDASOINITという名前のジョブは,これらのサーバー・ジョブの例です。
IBM i の適切に定義されたポート番号の説明については、『ホスト・サーバーおよびサーバー・マッパー用のポート番号』を参照してください。 フィルターにポート番号が使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
QUERY_GOVERNOR_FILTER | FTRQRYGOVR | VARCHAR(11)
NULL 可能 |
照会管理プログラムが、フィルターに使用されます。
照会管理プログラムがフィルターに使用されていない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
CLIENT_ACCTNG_FILTER | FTRCLTACG | VARCHAR(128) NULL 可能 |
CURRENT CLIENT_ACCTNG 特殊レジスターが、フィルターに使用されます。 フィルターに CURRENT CLIENT_ACCTNG 特殊レジスターが使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
CLIENT_APPLNAME_FILTER | FTRCLTAPP | VARCHAR(128) NULL 可能 |
CURRENT CLIENT_APPLNAME 特殊レジスターが、フィルターに使用されます。 フィルターに CURRENT CLIENT_APPLNAME 特殊レジスターが使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
CLIENT_PROGRAMID_FILTER | FTRCLTPGM | VARCHAR(128) NULL 可能 |
CURRENT CLIENT_PROGRAMID 特殊レジスターが、フィルターに使用されます。 フィルターに CURRENT CLIENT_PROGRAMID 特殊レジスターが使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
CLIENT_USERID_FILTER | FTRCLTUSR | VARCHAR(128) NULL 可能 |
CURRENT CLIENT_USERID 特殊レジスターが、フィルターに使用されます。 フィルターに CURRENT CLIENT_USERID 特殊レジスターが使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
CLIENT_WRKSTNNAME_FILTER | FTRCLTWS | VARCHAR(128) NULL 可能 |
CURRENT CLIENT_WRKSTNNAME 特殊レジスターが、フィルターに使用されます。 フィルターに CURRENT CLIENT_WRKSTNNAME 特殊レジスターが使用されない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
SQL_CODE_FILTER | FTRSQLCODE | VARCHAR(7)
NULL 可能 |
ステートメント実行からの SQLCODE 結果がフィルターにどのように使用されるのか。
ステートメントの SQLCODE がフィルターで使用されていない場合、または EVENT モニターの場合は、NULL 値が入ります。 |
SQLCODE_VALUE | SQLCODEVAL | INTEGER NULL 可能 |
フィルターで使用する正または負の SQLCODE 値。 SQL_CODE_FILTER 列に SQLCODE 以外の値が含まれている場合は、NULL 値が入ります。 |
例
例 1: すべてのアクティブ PUBLIC モニターの MONITOR_ID、および MONITOR_ID に関連付けられているファイル名を取得します。
SELECT MONITOR_ID, MONITOR_LIBRARY, MONITOR_FILE
FROM QSYS2.DATABASE_MONITOR_INFO
WHERE MONITOR_STATUS = 'ACTIVE' AND
MONITOR_TYPE = 'PUBLIC'
例 2: 1 ギガより大きい出力ファイルが含まれているアクティブ・モニターを探します。
SELECT MONITOR_LIBRARY, MONITOR_FILE, NUMBER_ROWS, DATA_SIZE
FROM QSYS2.DATABASE_MONITOR_INFO
WHERE MONITOR_STATUS = 'ACTIVE' AND
DATA_SIZE > 1073741824
例 3: 特定の SQLCODE (FTRSQLCODE) に基づいてフィルタリングしているすべてのアクティブ・モニターを探します。
SELECT MONITOR_ID, MONITOR_LIBRARY, MONITOR_FILE, SQLCODE_VALUE
FROM QSYS2.DATABASE_MONITOR_INFO
WHERE MONITOR_STATUS = 'ACTIVE' AND
SQL_CODE_FILTER = 'SQLCODE'
例 4: ユーザーの SQL プラン・キャッシュ・イベント・モニターの MONITOR_ID を取得し、それを使用してアクティブなイベント・モニターを終了します。
CALL QSYS2.END_PLAN_CACHE_EVENT_MONITOR (SELECT MONITOR_ID
FROM QSYS2.DATABASE_MONITOR_INFO
WHERE MONITOR_TYPE = 'EVENT' AND
MONITOR_LIBRARY = 'USERLIB')