ロックエスカレーションを抑制するには

提供: DB2逆引きWiki
移動: 案内, 検索

DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#チューニング編】 【DB2逆引きリファレンス目次#様々な最適化パラメータ

目次

前提

  • 以下のいずれかが必要: SYSADM権限

解説

ロックエスカレーションに関連するデータベース構成パラメータは以下のとおりです。

LOCKLIST
ひとつひとつのロックを記録するためのロックリストの容量を、ページ(ページサイズは4K)数で指定します。 すべてのアプリケーションが使用するロックのサイズの合計がこの値に達すると、ロックエスカレーションが発生します。 なお、各ロックのサイズは、32ビットインスタンスでは36バイトで、64ビットインスタンスでは56バイトです。
MAXLOCKS
各アプリケーションが保持できる行ロックのサイズの合計値を、ロックリストの容量に対するパーセンテージで指定します。 アプリケーションが保持するロックのサイズが、このパラメータにより指定したサイズに達すると、ロックエスカレーションが発生します。

使用例

データベース(ここではsample)に対してロックリストのサイズ(ここではデフォルトの倍の100)を設定する例。

db2 ==> UPDATE DB CFG FOR sample USING LOCKSIZE↓

注意

  • MAXLOCKSの値は、各アプリケーションが保持するロックのサイズの合計値であり、アプリケーションすべてでの合計値ではありません。 同時に実行される可能性のあるアプリケーションの数に注意してください。
  • 実際にどれだけロックが使用されているかは、スナップショットをとることで確認できます。

参照

個人用ツール
名前空間

変種
操作
案内
ツール