| プロパティ | 説明 |
|---|---|
| パラメータ・タイプ | 文字列 |
| 構文 | DB_BLOCK_CHECKING = { FALSE | OFF | LOW | MEDIUM | TRUE | FULL } |
| デフォルト値 | FALSE |
| 変更の可/不可 | ALTER SYSTEM |
| 基本/基本以外 | 基本以外 |
DB_BLOCK_CHECKINGには、データベース・ブロックに対してブロック・チェックを実行するかどうかを指定します。
値:
OFFまたはFALSE
ユーザー表領域内のブロックに対してブロック・チェックは実行されません。ただし、SYSTEM表領域のブロックに対するセマンティック・ブロック・チェックは常にオンです。
LOW
メモリー内でブロックの内容が変更された後(たとえば、UPDATEまたはINSERT文、ディスク上での読取り、RACでのインスタンス間ブロック転送の後)、基本ブロック・ヘッダー・チェックが実行されます。
MEDIUM
索引(破損が生じた場合に、削除と再作成によってその内容を再構成できるオブジェクト)以外のすべてのオブジェクトに対して、すべてのLOWチェックおよび完全セマンティック・チェックが実行されます。
FULLまたはTRUE
すべてのオブジェクトに対して、すべてのLOWおよびMEDIUMチェックおよび完全セマンティック・チェックが実行されます。
Oracleは、ブロックのデータ全体をチェックし、論理的な自己一貫性を確認します。ブロック・チェックにより、メモリーおよびデータの破損を防ぐことができます。通常、ブロック・チェックは、作業負荷およびパラメータ値に応じて、1から10%のオーバーヘッドの原因になります。特定のDMLオーバーヘッドが高くなる可能性があります。作業負荷を更新または挿入するほど、ブロック・チェックのコストがかかります。パフォーマンスのオーバーヘッドを許容できる場合は、DB_BLOCK_CHECKINGをFULLに設定します。
下位互換性のために、FALSE(OFFを意味します)およびTRUE(FULLを意味します)を使用できます。