Question: What does the hidden parameter
_db_block_cache_protect do?
The
_db_block_cache_protect parameter protects database
blocks. If _db_block_cache_protect = true, then
when a process needs to access a block in the buffer, it
needs to make a special call to enable the access then
disable it afterwards. The _db_block_cache_protect
can add overhead and can harm system performance.
Oracle uses a special database algorithm to protect all
modified blocks in the database memory. Any uncontrolled
database writes inside the database memory area will be
detected, protecting the disk from getting in memory
corrupted blocks. After every successful disk read, the
database block is checked in the database memory. The
checksum information from the block header is compared
with the memory checksum calculated on the fly. When
they do not match, Oracle raises an error indicating a
soft corrupted block, which will be reformatted and
reused again.
Although in memory corruption detection is helpful, any
in the memory corruption will crash the database
instance. This parameter is hidden and by default always
on.
|
|
Get the Complete
Oracle SQL Tuning Information
The landmark book
"Advanced Oracle
SQL Tuning The Definitive Reference" is
filled with valuable information on Oracle SQL Tuning.
This book includes scripts and tools to hypercharge Oracle 11g
performance and you can
buy it
for 30% off directly from the publisher.
|