プライマリ・コンテンツに移動
Oracle® Databaseリファレンス
11gリリース2 (11.2)
B56311-12
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

DML_LOCKS

プロパティ 説明
パラメータ・タイプ 整数
デフォルト値 次の値が導出される: 4×TRANSACTIONS
変更の可/不可 変更不可
値の範囲 20から無制限。0に設定すると、エンキューは使用禁止になる。
基本/基本以外 基本以外
Oracle RAC すべてのインスタンスに、このパラメータを設定する必要があり、すべてのインスタンスに正の値を指定するか、またはすべてに0を指定する必要がある。

DMLロックは、DML操作(挿入、更新および削除)を行う表でロックを取得します。DML_LOCKSには、トランザクションで変更されされる表ごとのDMLロックの最大数を指定します。値は、すべてのユーザーが参照するカレント表に対するロックの総計と等しい値である必要があります。たとえば、3人のユーザーが1つの表のデータを変更しようとするときは、3つのエントリが必要になります。3人のユーザーが2つの表のデータを変更しようとするときは、6つのエントリが必要になります。

デフォルト値は、各トランザクションで参照される4つの表の平均値になります。システムによっては、この値では足りない場合があります。

エンキューは、データベース・リソースへのアクセスをシリアライズ化する共有メモリー構造体です。DML_LOCKSの値を0に設定すると、エンキューが使用禁止になり、パフォーマンスがわずかに改善されます。ただし、DML_LOCKS0に設定する場合は、次の制限に注意する必要があります。

パラレルDML中は、シリアル実行中より多くのロックが保持されます。そのため、データベースが多くのパラレルDMLをサポートする場合、このパラメータの値を増やす必要がある場合があります。


関連項目:

  • ロックおよびパラレルDMLに必要なエンキュー・リソースの詳細は、『Oracle Database概要』を参照してください。

  • データの同時実行性の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』『Oracle Database概要』および『Oracle Database管理者ガイド』を参照してください。