Question: I have seen a
new 10g parameter called db_ultra_safe. Anytime I gear
something described as ultra safe, I worry that it is just marketing
What does the db_ultra_safe parameter
do, and do I want to implement db_ultra_safe? My
disks are mirrored and super-reliable with a mean time between
failures of 30 years.
db_ultra_safe init.ora parameter is a meta parameter got
Oracle's file corruption checking facility. If you have "safe"
disks (at least two years without a file corruption issue, you may
not want to turn-on the overhead of file checking.
However, if you are using replication where
redo logs and updates are transferred between systems (RAC, Data
Guard, Streams standby database), the possibility of data corruption
may increase slightly.
The db_ultra_safe parameter is a meta
parameter, such that a single setting sets the values for multiple
Oracle knows that with some additional
overhead, you can add extra checking to ensure that your data files
are not corrupted:
db_block_checking checks data block integrity before
writing the data block to disk. In this involves checking
the internal block headers and footer, plus internal row
- db_block_checksum: In 10g, this will allow
the DBWR (database writer) and sqlldr.exe program to do a
checksum when writing data to disk.
In 11g, the checks are moved to foreground processes. to add
db_lost_write_protect is introduced in 11g
to turn-off file write checking overhead. This is
important on disk arrays with their own RAM that issue false
"acks", acknowledging that data has been written, while it is
actually still i the disk array data buffer.
The db_ultra_safe parameter sets the default
values for other parameters that control protection levels.
- db_ultra_safe= off: When any of
db_block_checking, db_block_checksum, or
db_lost_write_protect are explicitly set, no changes are
This single setting for db_ultra_safe sets these three
- db_block_checking = medium
db_lost_write_protect = typical
- db_block_checksum = full.
- db_block_checking will be set to full.
db_lost_write_protect will be set to typical.
db_block_checksum will be set to full.
As we se, the db_ultra_safe set the overhead
values for systems with unreliable disks. Ships with mirrored
disks may not need this feature.
Get the Complete
Oracle SQL Tuning Information
The landmark book
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
for 30% off directly from the publisher.