Download PDF
Download page IBM DB2 コレクタの構成.
IBM DB2 コレクタの構成
このページでは、IBM DB2 コレクタの設定について詳しく説明しています。
前提条件
データベースの可視性で IBM DB2 をモニタするには、DB2 9.x 以降を実行している必要があります。
Connection Details
セクション | フィールド | 説明 |
---|---|---|
新しいコレクタの作成 | データベースタイプ | モニタするデータベースタイプ。 |
Agent(エージェント) | コレクタを管理するデータベースエージェント。 | |
Collector Name | コレクタを識別する名前。 | |
接続の詳細 | [ホスト名] または [IP アドレス] | データベースが実行されているマシンのホスト名または IP アドレス。 |
データベース | モニタ対象のデータベースインスタンスの名前。 データベースインスタンスが複数のデータベースをホストする場合は、データベースごとに個別のコレクタを作成してください。 | |
Listener Port | データベースエージェントと通信するデータベースのポートの TCP/IP アドレス。 | |
Custom JDBC Connection String | データベースエージェントによって生成された JDBC 接続文字列( Kerberos 認証に接続文字列を使用している場合は、[Advanced Options] の下の [Kerberos] オプションを選択してください。 | |
[Username] と [Password] | ユーザ名 | データベースエージェントを介してデータベースに接続し、データベースをモニタしているユーザの名前。ユーザは、「IBM DB2 LUW のユーザ権限」で説明されている権限を持っている必要があります。 |
パスワード | データベースエージェントを介してデータベースに接続し、データベースをモニタしているユーザのパスワード。 | |
Cyberark | データベースのユーザ名とパスワードに対して CyberArk を有効にする場合にクリックします。CyberArk を有効にすると、データベースのユーザ名とパスワードを取得するために、アプリケーション、安全、フォルダ、およびオブジェクトに関する情報が必要になります。データベースの可視性とともに CyberArk を使用するには、CyberArk Web サイトから JavaPasswordSDK.jar ファイルをダウンロードし、ファイルの名前を cyberark-sdk-9.5.jar に変更する必要があります。その後、この JAR ファイルをデータベースエージェント zip ファイルの lib ディレクトリにコピーする必要があります。 | |
詳細オプション | Sub-Collectors | 複数のデータベースインスタンスを統合ビューでモニタし、複数のデータベースのメトリックを集約する場合にクリックします。カスタムクラスタをモニタするには、サブコレクタごとに追加のホスト名または IP アドレス、およびポートの詳細を追加できます。合計で最大 29 個のサブコレクタを追加できます。したがって、カスタムクラスタで 30 個のデータベースをモニタできます。メインコレクタによって消費されるライセンスに加え、各サブコレクタはデータベースタイプに応じて 1 つ以上のライセンスを消費します。 注意
|
接続プロパティ(Connection Properties) | 新しい JDBC 接続プロパティを追加するか、またはリレーショナルデータベースの既存のプロパティを編集する場合にクリックします。 Kerberos 認証を使用してデータベースをモニタリングするには、「Kerberos 認証を使用した IBM DB2 データベースのモニタ」で説明されている手順に従います。 | |
Kerberos | クリックして Kerberos 認証を使用し、データベースユーザとホストユーザのパスワードを管理します。 | |
Monitor Operating System | 「サーバハードウェアをモニタするデータベースエージェントの構成」を参照してください。 |
IBM DB2 LUW のユーザ権限
モニタリングユーザは、モニタするために SYSMON 権限と接続権限が必要です。このユーザは sysmon_group の一員である必要があります。
実行プランを生成するには、スキーマで関連する EXPLAIN テーブルを作成する必要があります。
DB2 9.7 以降
データベースの可視性の完全な機能を使用するには、DB2 サーバのモニタリングスイッチ「TIMESTAMP」を有効にする必要があります。
「TIMESTAMP」モニタリングスイッチを有効にするには、次のように入力します。
update dbm cfg using dft_mon_timestamp on;
update db cfg using mon_act_metrics BASE
Privileges
grant select on SYSIBMADM.MON_CURRENT_SQL to user DBMon_Agent_User
grant select on SYSIBMADM.MON_LOCKWAITS to user DBMon_Agent_User
grant execute on function SYSPROC.MON_GET_CONNECTION to user DBMon_Agent_User
grant execute on function SYSPROC.MON_GET_PKG_CACHE_STMT to user DBMon_Agent_User
(version 10.5 and above) grant execute on function SYSPROC.MON_GET_TRANSACTION_LOG to DBMon_Agent_User
(version 10.5 and above) grant execute on function SYSPROC.MON_GET_DATABASE to DBMon_Agent_User
DBMon_Agent_User
はデータベースの可視性エージェントを実行するユーザ名に置き換えます。
DB2 9.5
データベースの可視性の完全な機能を使用するには、DB2 サーバのモニタリングスイッチ「STATEMENT」および「TIMESTAMP」を有効にする必要があります。
これらのモニタリングスイッチを有効にするには、次のように入力します。
update dbm cfg using dft_mon_stmt on;
update dbm cfg using dft_mon_timestamp on;
Privileges
grant select on SYSIBMADM.SNAPSTMT to user DBMon_Agent_User
grant select on SYSIBMADM.SNAPAPPL_INFO to user DBMon_Agent_User
grant select on table SYSIBMADM.ENV_PROD_INFO to user DBMon_Agent_User
ここで、DBMon_Agent_User
は、データベースの可視性エージェントを実行するユーザ名です。
restrict_access が [YES] に設定されている場合のユーザ権限
データベースの restrict_access
パラメータが [YES] に設定されている場合は、次の権限を付与する必要があります。
grant select on SYSIBMADM.MON_CURRENT_SQL to user DBMon_Agent_User;
grant select on SYSIBMADM.MON_LOCKWAITS to user DBMon_Agent_User;
grant execute on function SYSPROC.MON_GET_CONNECTION to user DBMon_Agent_User;
grant select on SYSIBMADM.SNAPAPPL_INFO to user DBMon_Agent_User;
grant EXECUTE on function SYSPROC.MON_GET_PKG_CACHE_STMT to user DBMon_Agent_User;
grant execute on function SYSPROC.MON_GET_TRANSACTION_LOG to user DBMon_Agent_User;
grant EXECUTE on package NULLID.SQLC2K26 to user DBMon_Agent_User;
grant select on SYSIBM.SYSDUMMY1 to user DBMon_Agent_User;
grant select on SYSIBMADM.ENV_PROD_INFO to user DBMon_Agent_User;
grant select on SYSIBMADM.ENV_SYS_RESOURCES to user DBMon_Agent_User;
grant execute on function SYSPROC.SNAP_GET_STMT(varchar(),Integer) to user DBMon_Agent_User;
grant select on SYSCAT.STATEMENTS to user DBMon_Agent_User;
grant select on SYSIBMADM.DBCFG to user DBMon_Agent_User;
grant execute on function SYSPROC.SNAP_GET_DB(varchar(),Integer) to user DBMon_Agent_User;
grant EXECUTE on package NULLID.SYSSH200 to user DBMon_Agent_User;
grant select on SYSIBMADM.ENV_SYS_RESOURCESto user DBMon_Agent_User;
grant select on SYSCAT.DBAUTH to user DBMon_Agent_User;
grant execute on function SYSPROC.SNAP_GET_DBM(Integer) to user DBMon_Agent_User;
grant select on syscat.schemata to user DBMon_Agent_User;
DBMon_Agent_User
はデータベースの可視性エージェントを実行するユーザ名に置き換えます。
実行プランの生成
DB2 で実行プランを生成するには、モニタリングユーザ ID で explain_ * テーブルにアクセスできる必要があります。
- 次のいずれかの方法を使用して、explain テーブルを作成します。
SYSPROC.SYSINSTALLOBJECTS procedure:{{}}
を呼び出す
{{db2 CONNECT TO database-name
db2 }}
{{CALL SYSPROC.SYSINSTALLOBJECTS('EXPLAIN', 'C',
CAST (NULL AS VARCHAR(128)), CAST (NULL AS VARCHAR(128)))}}
このコールによって、SYSTOOLS スキーマの下に explain テーブルが作成されます。別のスキーマでテーブルを作成するには、コールの最後のパラメータとしてスキーマ名を指定します。
EXPLAIN.DDL command file:{{}}
を実行する
{{db2 CONNECT TO database-name
db2 -tf EXPLAIN.DDL}}
{{}}
モニタリングユーザ ID に、SQL でアクセスされるすべてのテーブルと必要な explain_ * テーブルに対する SELECT 権限が付与されていないと、プランの説明は適切に機能しません。