SNAPDB_MEMORY_POOL 管理ビューおよび SNAP_GET_DB_MEMORY_POOL 表関数 - データベース・レベルのメモリー使用量情報の検索

SNAPDB_MEMORY_POOL 管理ビューおよび SNAP_GET_DB_MEMORY_POOL 表関数は、UNIX プラットフォームの場合のみ、データベース・レベルでのメモリー使用量に関する情報を戻します。

SNAPDB_MEMORY_POOL 管理ビュー および SNAP_GET_DB_MEMORY_POOL 表関数 は、UNIX プラットフォームの場合のみ、データベース・レベルでのメモリー使用量に関する情報を戻します。

重要: バージョン 9.7 フィックスパック 5 以降、SNAPDB_MEMORY_POOL 管理ビューおよび SNAP_GET_DB_MEMORY_POOL 表関数は非推奨になり、 MON_GET_MEMORY_POOL 表関数-メモリー・プール情報の取得 および MON_GET_MEMORY_SET 表関数-メモリー・セット情報の取得に置き換えられました。
管理ビューまたは表関数のどちらを使用しているかによって、以下のいずれかのセクションを参照してください。

SNAPDB_MEMORY_POOL 管理ビュー

この管理ビューを使用して、現在接続中のデータベースに関するデータベース・レベルのメモリー使用量情報を取得することができます。

SNAPDB_MEMORY_POOL 管理ビューを MON_GET_DATABASE、MON_GET_TRANSACTION_LOG、MON_GET_HADR、および ADMIN_GET_STORAGE_PATHS 表関数とともに使用すると、 GET SNAPSHOT FOR DATABASE ON database-alias CLP コマンドと同等の情報が得られます。

スキーマは SYSIBMADM です。

戻される可能性のある情報の完全なリストは、 表 1 を参照してください。

許可

以下のいずれかの権限が必要です。
  • SNAPDB_MEMORY_POOL 管理ビューに対する SELECT 特権
  • SNAPDB_MEMORY_POOL 管理ビューに対する CONTROL 特権
  • DATAACCESS 権限
この表関数を使用するには、以下のいずれかが必要です。
  • SNAP_GET_DB_MEMORY_POOL 表関数に対する EXECUTE 特権
  • DATAACCESS 権限
さらに、スナップショット・モニター・データにアクセスするには、以下のいずれかの権限も必要です。
  • SYSMON
  • SYSCTRL
  • SYSMAINT
  • SYSADM

デフォルトの PUBLIC 特権

制限のないデータベースでは、このビューが自動的に作成されると、SELECT 特権が PUBLIC に付与されます。

現在接続中のデータベースである SAMPLE のメモリー・プールおよびそれらの現在のサイズのリストを取得します。
SELECT POOL_ID, POOL_CUR_SIZE FROM SYSIBMADM.SNAPDB_MEMORY_POOL
以下はこの照会の出力例です。
POOL_ID       POOL_CUR_SIZE
------------- --------------------
UTILITY                      32768
PACKAGE_CACHE               475136
CAT_CACHE                    65536
BP                         2097152
BP                         1081344
BP                          540672
BP                          278528
BP                          147456
BP                           81920
LOCK_MGR                    294912
DATABASE                   3833856
OTHER                            0

  12 record(s) selected.

SNAP_GET_DB_MEMORY_POOL 表関数

SNAP_GET_DB_MEMORY_POOL 表関数は SNAPDB_MEMORY_POOL 管理ビューと同じ情報を戻しますが、特定のデータベース・メンバー、すべてのデータベース・メンバーの集約、またはすべてのデータベース・メンバーのいずれかの特定のデータベースを対象とした情報を検索することができます。

SNAP_GET_DB_MEMORY_POOL 表関数を SNAP_GET_DB、SNAP_GET_DETAILLOG、SNAP_GET_HADR、および ADMIN_GET_STORAGE_PATHS 表関数とともに使用すると、 GET SNAPSHOT FOR ALL DATABASES CLP コマンドと同等の情報が提供されます。

戻される可能性のある情報の完全なリストは、 表 1 を参照してください。

構文

Read syntax diagramSkip visual syntax diagramSNAP_GET_DB_MEMORY_POOL(dbname , member)

スキーマは SYSPROC です。

表関数パラメーター

dbname
現在接続されているデータベースと同じインスタンス内の有効なデータベース名を指定する、タイプ VARCHAR(128) の入力引数。 "Indirect" または "Home" のディレクトリー項目タイプを持つデータベース名を指定します。 このディレクトリー項目タイプは、LIST DATABASE DIRECTORY コマンドで確認できます。 現在接続されているデータベースからのスナップショットを取得するには、空ストリングを指定します。 現在接続されているデータベースと同じインスタンス内のすべてのデータベースからのスナップショットを取得するには、NULL 値を指定します。
member
有効なデータベース・メンバー番号を指定する、タイプ INTEGER のオプションの入力引数。 現在のデータベース・メンバーの場合は -1、すべてアクティブなデータベース・メンバーの集合の場合は -2 を指定します。 dbnameNULL に設定されておらず、 memberNULLに設定されている場合、 -1memberに対して暗黙的に設定されます。 この入力オプションを使用しない場合、つまり dbname のみを指定する場合、データはすべてのアクティブなデータベース・メンバーから戻されます。 アクティブなデータベース・メンバーとは、アプリケーションによるデータベースへの接続およびデータベースの使用が可能なメンバーのことです。

dbnamemember の両方を NULL に設定すると、SNAP_WRITE_FILE プロシージャーにより作成されるファイルからのデータの読み取りが試行されます。 このファイルはいつでも作成される可能性があるため、データは現行のものであるとは限らないことに注意してください。 対応するスナップショット API 要求タイプを持つファイルが存在しない場合、SNAP_GET_DB_MEMORY_POOL 表関数は、現在接続中のデータベースおよびデータベース・メンバー番号のスナップショットを取得します。

許可

以下のいずれかの権限が必要です。
  • SNAP_GET_DB_MEMORY_POOL 表関数に対する EXECUTE 特権
  • DATAACCESS 権限
さらに、スナップショット・モニター・データにアクセスするには、以下のいずれかの権限も必要です。
  • SYSMON
  • SYSCTRL
  • SYSMAINT
  • SYSADM

デフォルトの PUBLIC 特権

制限のないデータベースでは、この関数が自動的に作成されると、EXECUTE 特権が PUBLIC に付与されます。

すべてのデータベースのメモリー・プールおよびそれらの現在のサイズのリストを取得します。
SELECT SUBSTR(DB_NAME,1,8) AS DB_NAME, POOL_ID, POOL_CUR_SIZE 
   FROM TABLE(SNAPSHOT_GET_DB_MEMORY_POOL
   (CAST(NULL AS VARCHAR(128)), -1)) AS T
以下はこの照会の出力例です。
DB_NAME  POOL_ID        POOL_CUR_SIZE 
-------- -------------- --------------------
TESTDB   UTILITY                       65536
TESTDB   PACKAGE_CACHE                851968
TESTDB   CAT_CACHE                     65536
TESTDB   BP                         35913728
TESTDB   BP                           589824
TESTDB   BP                           327680
TESTDB   BP                           196608
TESTDB   BP                           131072
TESTDB   SHARED_SORT                   65536
TESTDB   LOCK_MGR                   10092544
TESTDB   DATABASE                    4980736
TESTDB   OTHER                        196608
SAMPLE   UTILITY                       65536
SAMPLE   PACKAGE_CACHE                655360
SAMPLE   CAT_CACHE                    131072
SAMPLE   BP                          4325376
SAMPLE   BP                           589824
SAMPLE   BP                           327680
SAMPLE   BP                           196608
SAMPLE   BP                           131072
SAMPLE   SHARED_SORT                       0
SAMPLE   LOCK_MGR                     655360
SAMPLE   DATABASE                    4653056
SAMPLE   OTHER                        196608

24 record(s) selected.

戻される情報

表 1. SNAPDB_MEMORY_POOL 管理ビューおよび SNAP_GET_DB_MEMORY_POOL 表関数によって戻される情報
列名 データ・タイプ 説明または対応するモニター・エレメント
SNAPSHOT_TIMESTAMP TIMESTAMP スナップショットが取得された日時。
DB_NAME VARCHAR(128) db_name データベース名
POOL_ID VARCHAR(14) pool_id-メモリー・プール ID 。 このインターフェースは、sqlmon.h での定義に基づくテキスト ID を戻します。これは次のいずれかです。
  • APP_GROUP
  • APPL_CONTROL
  • APPLICATION
  • BP
  • CAT_CACHE
  • DATABASE
  • DFM
  • FCMBP
  • IMPORT_POOL
  • LOCK_MGR
  • MONITOR
  • OTHER
  • PACKAGE_CACHE
  • QUERY
  • SHARED_SORT
  • SORT
  • STATEMENT
  • STATISTICS
  • UTILITY
POOL_SECONDARY_ID VARCHAR(32) pool_secondary_id メモリー・プール 2 次 ID
POOL_CUR_SIZE BIGINT pool_cur_size メモリー・プールの現行サイズ
POOL_WATERMARK BIGINT pool_watermark メモリー・プール水準点
POOL_CONFIG_SIZE BIGINT pool_config_size メモリー・プールの構成済みサイズ
DBPARTITIONNUM SMALLINT dbpartitionnum - データベース・パーティション番号 : モニター・エレメント
メンバー SMALLINT member - データベース・メンバー・モニター・エレメント